diff options
author | brantje <brantje@gmail.com> | 2016-12-28 17:13:39 +0300 |
---|---|---|
committer | brantje <brantje@gmail.com> | 2016-12-28 17:26:26 +0300 |
commit | daeaa8f36c2ace52d745d38366ab39482bca05a1 (patch) | |
tree | 5fee7ff1c9f36b64cc3822301eb072929dac6b24 /js | |
parent | ed6fd19485a9cd462ec0aa6214a772c7ea391379 (diff) |
This fixes the decryption error happening when auto login is enabled and user changes vault password.
Diffstat (limited to 'js')
-rw-r--r-- | js/app/controllers/settings.js | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/js/app/controllers/settings.js b/js/app/controllers/settings.js index 4ee899f0..d439a3ac 100644 --- a/js/app/controllers/settings.js +++ b/js/app/controllers/settings.js @@ -203,6 +203,8 @@ $scope.error = $translate.instant('password.no.match'); return; } + SettingsService.setSetting('defaultVault', null); + SettingsService.setSetting('defaultVaultPass', null); VaultService.getVault($scope.active_vault).then(function (vault) { var _selected_credentials = []; if (vault.credentials.length === 0) { @@ -210,8 +212,17 @@ } for (var i = 0; i < vault.credentials.length; i++) { var _credential = vault.credentials[i]; - if (_credential.shared_key === null || _credential.shared_key === '') { - _selected_credentials.push(_credential); + if (_credential.shared_key === null || _credential.shared_key === '' || !_credential.hasOwnProperty('acl')) { + var _success; + try{ + CredentialService.decryptCredential(_credential, VaultService.getActiveVault().vaultKey); + _success = true; + } catch (e){ + _success = false; + } + if(_success) { + _selected_credentials.push(_credential); + } } } $scope.change_pw = { |