eth: stop eventMux first

This fixes the hang in Ethereum.Stop.
This commit is contained in:
Felix Lange 2014-10-29 03:01:20 +01:00
parent 8170f96ded
commit e252dbf989

View File

@ -490,6 +490,9 @@ func (s *Ethereum) peerHandler(listener net.Listener) {
} }
func (s *Ethereum) Stop() { func (s *Ethereum) Stop() {
// Stop eventMux first, it will close all subscriptions.
s.eventMux.Stop()
// Close the database // Close the database
defer s.db.Close() defer s.db.Close()
@ -514,7 +517,6 @@ func (s *Ethereum) Stop() {
} }
s.txPool.Stop() s.txPool.Stop()
s.stateManager.Stop() s.stateManager.Stop()
s.eventMux.Stop()
s.blockPool.Stop() s.blockPool.Stop()
ethlogger.Infoln("Server stopped") ethlogger.Infoln("Server stopped")