From 601340bd464e3ebae0e4fa3407be5fff3bb3fcbf Mon Sep 17 00:00:00 2001
From: obscuren <geffobscura@gmail.com>
Date: Fri, 28 Feb 2014 16:45:29 +0100
Subject: [PATCH] Fixed shutting down

---
 ethereum.go | 2 +-
 peer.go     | 5 ++---
 2 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/ethereum.go b/ethereum.go
index 90682b396..b4a8cdb4a 100644
--- a/ethereum.go
+++ b/ethereum.go
@@ -295,7 +295,7 @@ func (s *Ethereum) Stop() {
 	s.TxPool.Stop()
 	s.BlockManager.Stop()
 
-	s.shutdownChan <- true
+	close(s.shutdownChan)
 }
 
 // This function will wait for a shutdown and resumes main thread execution
diff --git a/peer.go b/peer.go
index a8708206f..970619714 100644
--- a/peer.go
+++ b/peer.go
@@ -511,9 +511,8 @@ func (p *Peer) handleHandshake(msg *ethwire.Msg) {
 		p.port = uint16(c.Get(4).Uint())
 
 		// Self connect detection
-		data, _ := ethutil.Config.Db.Get([]byte("KeyRing"))
-		pubkey := ethutil.NewValueFromBytes(data).Get(2).Bytes()
-		if bytes.Compare(pubkey, p.pubkey) == 0 {
+		key := ethutil.Config.Db.GetKeys()[0]
+		if bytes.Compare(key.PublicKey, p.pubkey) == 0 {
 			p.Stop()
 
 			return
-- 
GitLab