diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-06-29 14:01:12 +0200 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-06-29 14:01:12 +0200 |
commit | 136397667a1c740578081a990882a18149a6b686 (patch) | |
tree | 9a4a02c9f25c820359645abc7bab9ef75aed8966 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java | |
parent | 93e6b6f9b5debfc8fac3bad1390254e389f7432e (diff) | |
download | open-keychain-136397667a1c740578081a990882a18149a6b686.tar.gz open-keychain-136397667a1c740578081a990882a18149a6b686.tar.bz2 open-keychain-136397667a1c740578081a990882a18149a6b686.zip |
Force db upgrade on app start
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java index 8d43c0155..627623f47 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/KeychainApplication.java @@ -33,6 +33,7 @@ import android.provider.ContactsContract; import android.widget.Toast; import org.spongycastle.jce.provider.BouncyCastleProvider; +import org.sufficientlysecure.keychain.provider.KeychainDatabase; import org.sufficientlysecure.keychain.provider.TemporaryStorageProvider; import org.sufficientlysecure.keychain.R; import org.sufficientlysecure.keychain.ui.ConsolidateDialogActivity; @@ -101,7 +102,10 @@ public class KeychainApplication extends Application { TemporaryStorageProvider.cleanUp(this); - checkConsolidateRecovery(); + if (!checkConsolidateRecovery()) { + // force DB upgrade, https://github.com/open-keychain/open-keychain/issues/1334 + new KeychainDatabase(this).getReadableDatabase().close(); + } } public static HashMap<String,Bitmap> qrCodeCache = new HashMap<>(); @@ -118,12 +122,15 @@ public class KeychainApplication extends Application { /** * Restart consolidate process if it has been interruped before */ - public void checkConsolidateRecovery() { + public boolean checkConsolidateRecovery() { if (Preferences.getPreferences(this).getCachedConsolidate()) { Intent consolidateIntent = new Intent(this, ConsolidateDialogActivity.class); consolidateIntent.putExtra(ConsolidateDialogActivity.EXTRA_CONSOLIDATE_RECOVERY, true); consolidateIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(consolidateIntent); + return true; + } else { + return false; } } |