From 3c9a2c752fcc1d85d1e026ac498b2e092725db61 Mon Sep 17 00:00:00 2001 From: Bas van Kervel Date: Fri, 18 Dec 2015 15:23:43 +0100 Subject: [PATCH] console: bugfix that causes the console to crash when connection to an endpoint without the personal api enabled --- cmd/geth/js.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/cmd/geth/js.go b/cmd/geth/js.go index 56b7a8b001..9329eaa0e7 100644 --- a/cmd/geth/js.go +++ b/cmd/geth/js.go @@ -341,11 +341,12 @@ func (js *jsre) apiBindings(f xeth.Frontend) error { // Override the unlockAccount and newAccount methods on the personal object since these require user interaction. // Assign the jeth.unlockAccount and jeth.newAccount in the jsre the original web3 callbacks. These will be called // by the jeth.* methods after they got the password from the user and send the original web3 request to the backend. - persObj := p.Object() - js.re.Run(`jeth.unlockAccount = personal.unlockAccount;`) - persObj.Set("unlockAccount", jeth.UnlockAccount) - js.re.Run(`jeth.newAccount = personal.newAccount;`) - persObj.Set("newAccount", jeth.NewAccount) + if persObj := p.Object(); persObj != nil { // make sure the personal api is enabled over the interface + js.re.Run(`jeth.unlockAccount = personal.unlockAccount;`) + persObj.Set("unlockAccount", jeth.UnlockAccount) + js.re.Run(`jeth.newAccount = personal.newAccount;`) + persObj.Set("newAccount", jeth.NewAccount) + } return nil }