Merge pull request #166 from fjl/fix/mist-quit

Fix Mist Shutdown
This commit is contained in:
Jeffrey Wilcke 2014-10-29 21:09:32 +01:00
commit ce2ec1980b
2 changed files with 4 additions and 8 deletions

View File

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

View File

@ -25,8 +25,7 @@ type JSRE struct {
Vm *otto.Otto
pipe *ethpipe.JSPipe
events event.Subscription
quitChan chan bool
events event.Subscription
objectCb map[string][]otto.Value
}
@ -51,7 +50,6 @@ func NewJSRE(ethereum *eth.Ethereum) *JSRE {
otto.New(),
ethpipe.NewJSPipe(ethereum),
nil,
make(chan bool),
make(map[string][]otto.Value),
}
@ -104,10 +102,6 @@ func (self *JSRE) Require(file string) error {
func (self *JSRE) Stop() {
self.events.Unsubscribe()
// Kill the main loop
self.quitChan <- true
close(self.quitChan)
jsrelogger.Infoln("stopped")
}