diff --git a/library/src/main/java/com/readystatesoftware/sqliteasset/SQLiteAssetHelper.java b/library/src/main/java/com/readystatesoftware/sqliteasset/SQLiteAssetHelper.java index ebee1c9..7c256e7 100755 --- a/library/src/main/java/com/readystatesoftware/sqliteasset/SQLiteAssetHelper.java +++ b/library/src/main/java/com/readystatesoftware/sqliteasset/SQLiteAssetHelper.java @@ -179,6 +179,7 @@ public synchronized SQLiteDatabase getWritableDatabase() { // do force upgrade if (version != 0 && version < mForcedUpgradeVersion) { + db.close(); db = createOrOpenDatabase(true); db.setVersion(mNewVersion); version = db.getVersion(); @@ -288,6 +289,7 @@ public synchronized void close() { mDatabase.close(); mDatabase = null; } + super.close(); } @Override @@ -391,6 +393,7 @@ private SQLiteDatabase createOrOpenDatabase(boolean force) throws SQLiteAssetExc // database already exists if (force) { Log.w(TAG, "forcing database upgrade!"); + db.close(); copyDatabaseFromAssets(); db = returnDatabase(); }