diff options
author | kumavis <aaron@kumavis.me> | 2018-03-09 06:10:28 +0800 |
---|---|---|
committer | kumavis <aaron@kumavis.me> | 2018-03-09 06:10:28 +0800 |
commit | 98efca0a9798db205ef8068c038a225a79c575cd (patch) | |
tree | 4ec379cefe4c5e0a1838b2a89fe107cc4ee129c4 /app/scripts/background.js | |
parent | 64fcd271028ff57c34dd930b76ce23081eff814a (diff) | |
download | tangerine-wallet-browser-98efca0a9798db205ef8068c038a225a79c575cd.tar.gz tangerine-wallet-browser-98efca0a9798db205ef8068c038a225a79c575cd.tar.zst tangerine-wallet-browser-98efca0a9798db205ef8068c038a225a79c575cd.zip |
background - storage - cleanup storage wiring
Diffstat (limited to 'app/scripts/background.js')
-rw-r--r-- | app/scripts/background.js | 34 |
1 files changed, 8 insertions, 26 deletions
diff --git a/app/scripts/background.js b/app/scripts/background.js index e8a7594ac..ef5513ec7 100644 --- a/app/scripts/background.js +++ b/app/scripts/background.js @@ -71,36 +71,19 @@ async function loadStateFromPersistence () { // read from disk // first from preferred, async API: - let localStoreData - if (localStore.isSupported) { - let localData - try { - localData = await localStore.get() - } catch (err) { - log.error('error fetching state from local store:', err) - } - - // If localStore is supported but has not been written to yet, ignore: - if (Object.keys(localData).length > 0) { - localStoreData = localData - } - } - - versionedData = localStoreData || + versionedData = (await localStore.get()) || diskStore.getState() || migrator.generateInitialState(firstTimeState) // migrate data versionedData = await migrator.migrateData(versionedData) + if (!versionedData) { + throw new Error('MetaMask - migrator returned undefined') + } // write to disk - localStore.set(versionedData) - .catch((reason) => { - log.error('Problem saving migrated data', versionedData) - }) - if (versionedData) { - diskStore.putState(versionedData) - } + if (localStore.isSupported) localStore.set(versionedData) + diskStore.putState(versionedData) // return just the data return versionedData.data @@ -134,7 +117,7 @@ function setupController (initState) { // setup state persistence pump( asStream(controller.store), - debounce(2000), + debounce(1000), storeTransform(versionifyData), storeTransform(syncDataWithExtension), asStream(diskStore), @@ -154,8 +137,7 @@ function setupController (initState) { .catch((err) => { log.error('error setting state in local store:', err) }) - } else { log.error('local store not supported') } - + } return state } |