X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/abd5f51554b4eed06e98922c0fb2253c2205281c..d6f725bfebd0304b0b4f5d0daab8e311adf41aa7:/src/com/owncloud/android/providers/FileContentProvider.java diff --git a/src/com/owncloud/android/providers/FileContentProvider.java b/src/com/owncloud/android/providers/FileContentProvider.java index 5d4f9b8c..e87d151c 100644 --- a/src/com/owncloud/android/providers/FileContentProvider.java +++ b/src/com/owncloud/android/providers/FileContentProvider.java @@ -244,17 +244,40 @@ public class FileContentProvider extends ContentProvider { } if (oldVersion < 3 && newVersion >= 3) { Log.i("SQL", "Entering in the #2 ADD in onUpgrade"); - db.execSQL("ALTER TABLE " + ProviderTableMeta.DB_NAME + - " ADD COLUMN " + ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA + " INTEGER " + - " DEFAULT 0"); - upgraded = true; + db.beginTransaction(); + try { + db.execSQL("ALTER TABLE " + ProviderTableMeta.DB_NAME + + " ADD COLUMN " + ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA + " INTEGER " + + " DEFAULT 0"); + + // assume there are not local changes pending to upload + db.execSQL("UPDATE " + ProviderTableMeta.DB_NAME + + " SET " + ProviderTableMeta.FILE_LAST_SYNC_DATE_FOR_DATA + " = " + System.currentTimeMillis() + + " WHERE " + ProviderTableMeta.FILE_STORAGE_PATH + " IS NOT NULL"); + + upgraded = true; + db.setTransactionSuccessful(); + } finally { + db.endTransaction(); + } } if (oldVersion < 4 && newVersion >= 4) { Log.i("SQL", "Entering in the #3 ADD in onUpgrade"); - db.execSQL("ALTER TABLE " + ProviderTableMeta.DB_NAME + + db.beginTransaction(); + try { + db .execSQL("ALTER TABLE " + ProviderTableMeta.DB_NAME + " ADD COLUMN " + ProviderTableMeta.FILE_MODIFIED_AT_LAST_SYNC_FOR_DATA + " INTEGER " + " DEFAULT 0"); - upgraded = true; + + db.execSQL("UPDATE " + ProviderTableMeta.DB_NAME + + " SET " + ProviderTableMeta.FILE_MODIFIED_AT_LAST_SYNC_FOR_DATA + " = " + ProviderTableMeta.FILE_MODIFIED + + " WHERE " + ProviderTableMeta.FILE_STORAGE_PATH + " IS NOT NULL"); + + upgraded = true; + db.setTransactionSuccessful(); + } finally { + db.endTransaction(); + } } if (!upgraded) Log.i("SQL", "OUT of the ADD in onUpgrade; oldVersion == " + oldVersion + ", newVersion == " + newVersion);