From 549f1add296ccfb76d5038316acb4d7c3935221a Mon Sep 17 00:00:00 2001
From: Felix Lange <fjl@twurst.com>
Date: Wed, 30 Mar 2016 21:02:54 +0200
Subject: [PATCH] eth: report unlock errors to RPC clients

---
 eth/api.go | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/eth/api.go b/eth/api.go
index 20cf6de39..b82a1addd 100644
--- a/eth/api.go
+++ b/eth/api.go
@@ -440,17 +440,16 @@ func (s *PrivateAccountAPI) NewAccount(password string) (common.Address, error)
 // UnlockAccount will unlock the account associated with the given address with
 // the given password for duration seconds. If duration is nil it will use a
 // default of 300 seconds. It returns an indication if the account was unlocked.
-func (s *PrivateAccountAPI) UnlockAccount(addr common.Address, password string, duration *rpc.HexNumber) bool {
+func (s *PrivateAccountAPI) UnlockAccount(addr common.Address, password string, duration *rpc.HexNumber) (bool, error) {
 	if duration == nil {
 		duration = rpc.NewHexNumber(300)
 	}
 	a := accounts.Account{Address: addr}
 	d := time.Duration(duration.Int64()) * time.Second
 	if err := s.am.TimedUnlock(a, password, d); err != nil {
-		glog.V(logger.Info).Infof("%v\n", err)
-		return false
+		return false, err
 	}
-	return true
+	return true, nil
 }
 
 // LockAccount will lock the account associated with the given address when it's unlocked.
-- 
GitLab