From c3d1404e72f4978db5b4522cb793ffd22653d9ff Mon Sep 17 00:00:00 2001 From: Dan Finlay Date: Mon, 12 Sep 2016 15:18:32 -0700 Subject: Fix clearing of account cache on vault restore --- app/scripts/lib/idStore.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'app') diff --git a/app/scripts/lib/idStore.js b/app/scripts/lib/idStore.js index 0c5260ffd..e84e1aba0 100644 --- a/app/scripts/lib/idStore.js +++ b/app/scripts/lib/idStore.js @@ -51,6 +51,7 @@ IdentityStore.prototype.createNewVault = function (password, entropy, cb) { this.configManager.setData({}) } + this.purgeCache() this._createVault(password, null, entropy, (err) => { if (err) return cb(err) @@ -59,7 +60,6 @@ IdentityStore.prototype.createNewVault = function (password, entropy, cb) { this.configManager.setShowSeedWords(true) var seedWords = this._idmgmt.getSeed() - cb(null, seedWords) }) } @@ -72,6 +72,8 @@ IdentityStore.prototype.recoverSeed = function (cb) { } IdentityStore.prototype.recoverFromSeed = function (password, seed, cb) { + this.purgeCache() + this._createVault(password, seed, null, (err) => { if (err) return cb(err) @@ -500,8 +502,10 @@ IdentityStore.prototype._createIdMgmt = function (derivedKey) { } IdentityStore.prototype.purgeCache = function () { - this._getAddresses().forEach((address) => { - this._ethStore.del(ethUtil.addHexPrefix(address)) + this._currentState.identities = {} + var accounts = Object.keys(this._ethStore._currentState.accounts) + accounts.forEach((address) => { + this._ethStore.removeAccount(address) }) } -- cgit v1.2.3