diff options
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainDatabase.java')
-rw-r--r-- | OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainDatabase.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainDatabase.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainDatabase.java index ceaa93f9b..7a63ec3d7 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainDatabase.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/provider/KeychainDatabase.java @@ -165,10 +165,10 @@ public class KeychainDatabase extends SQLiteOpenHelper { // make sure this is only done once, on the first instance! boolean iAmIt = false; - synchronized(apgHack) { - if(!apgHack) { + synchronized(KeychainDatabase.class) { + if(!KeychainDatabase.apgHack) { iAmIt = true; - apgHack = true; + KeychainDatabase.apgHack = true; } } // if it's us, do the import @@ -206,6 +206,7 @@ public class KeychainDatabase extends SQLiteOpenHelper { try { db.execSQL("ALTER TABLE keys ADD COLUMN has_secret BOOLEAN"); } catch (Exception e) { + // never mind, the column probably already existed } } } @@ -261,8 +262,8 @@ public class KeychainDatabase extends SQLiteOpenHelper { cursor = db.rawQuery("SELECT key_ring_data FROM key_rings WHERE type = 1 OR EXISTS (" + " SELECT 1 FROM key_rings d2 WHERE key_rings.master_key_id = d2.master_key_id" + " AND d2.type = 1) ORDER BY type ASC", null); - Log.d(Constants.TAG, "Importing " + cursor.getCount() + " secret keyrings from apg.db..."); if (cursor != null) { + Log.d(Constants.TAG, "Importing " + cursor.getCount() + " secret keyrings from apg.db..."); for (int i = 0; i < cursor.getCount(); i++) { cursor.moveToPosition(i); byte[] data = cursor.getBlob(0); @@ -285,8 +286,8 @@ public class KeychainDatabase extends SQLiteOpenHelper { + " SELECT 1 FROM key_rings d2 WHERE key_rings.master_key_id = d2.master_key_id AND" + " d2.type = 1)) DESC, type DESC", null); // import from old database - Log.d(Constants.TAG, "Importing " + cursor.getCount() + " keyrings from apg.db..."); if (cursor != null) { + Log.d(Constants.TAG, "Importing " + cursor.getCount() + " keyrings from apg.db..."); for (int i = 0; i < cursor.getCount(); i++) { cursor.moveToPosition(i); byte[] data = cursor.getBlob(0); |