From 0ea89bf9da7f2250c8d27f64b23c6de7a0308db4 Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Mon, 24 Apr 2017 10:53:23 -0400 Subject: [PATCH] only clear memory org keys when locked --- src/background.js | 2 +- src/services/cryptoService.js | 13 +++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/background.js b/src/background.js index 22abba7c8f..4ecb24d570 100644 --- a/src/background.js +++ b/src/background.js @@ -756,7 +756,7 @@ function checkLock() { if (diffSeconds >= lockOptionSeconds) { // need to lock now - Q.all([cryptoService.clearKey(), cryptoService.clearOrgKeys()]).then(function () { + Q.all([cryptoService.clearKey(), cryptoService.clearOrgKeys(true)]).then(function () { cryptoService.clearPrivateKey(); setIcon(); folderService.clearCache(); diff --git a/src/services/cryptoService.js b/src/services/cryptoService.js index 7e496c0650..3eb840b965 100644 --- a/src/services/cryptoService.js +++ b/src/services/cryptoService.js @@ -236,13 +236,18 @@ function initCryptoService(constantsService) { _privateKey = null; }; - CryptoService.prototype.clearOrgKeys = function () { + CryptoService.prototype.clearOrgKeys = function (memoryOnly) { var deferred = Q.defer(); - _orgKeys = {}; - chrome.storage.local.remove('encOrgKeys', function () { + _orgKeys = null; + if (memoryOnly) { deferred.resolve(); - }); + } + else { + chrome.storage.local.remove('encOrgKeys', function () { + deferred.resolve(); + }); + } return deferred.promise; };