Merge pull request #2267 from karalabe/pending-state-events
core, miner: add PendingStateEvent to track non-log updates.
This commit is contained in:
		
						commit
						5adc461d58
					
				| @ -35,6 +35,9 @@ type PendingLogsEvent struct { | ||||
| 	Logs vm.Logs | ||||
| } | ||||
| 
 | ||||
| // PendingStateEvent is posted pre mining and notifies of pending state changes.
 | ||||
| type PendingStateEvent struct{} | ||||
| 
 | ||||
| // NewBlockEvent is posted when a block has been imported.
 | ||||
| type NewBlockEvent struct{ Block *types.Block } | ||||
| 
 | ||||
|  | ||||
| @ -649,8 +649,15 @@ func (env *Work) commitTransactions(mux *event.TypeMux, transactions types.Trans | ||||
| 			coalescedLogs = append(coalescedLogs, logs...) | ||||
| 		} | ||||
| 	} | ||||
| 	if len(coalescedLogs) > 0 { | ||||
| 		go mux.Post(core.PendingLogsEvent{Logs: coalescedLogs}) | ||||
| 	if len(coalescedLogs) > 0 || env.tcount > 0 { | ||||
| 		go func(logs vm.Logs, tcount int) { | ||||
| 			if len(logs) > 0 { | ||||
| 				mux.Post(core.PendingLogsEvent{Logs: logs}) | ||||
| 			} | ||||
| 			if tcount > 0 { | ||||
| 				mux.Post(core.PendingStateEvent{}) | ||||
| 			} | ||||
| 		}(coalescedLogs, env.tcount) | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user