diff options
author | Vasu Nori <vnori@google.com> | 2010-03-05 22:12:51 -0800 |
---|---|---|
committer | Vasu Nori <vnori@google.com> | 2010-03-05 22:12:51 -0800 |
commit | 78f307d229466bb41c0260d1092dcea82a7bb5f8 (patch) | |
tree | cc3ad99d8856810bf9ee37dc36dad6c6c2af9450 /core/jni/android_database_SQLiteDatabase.cpp | |
parent | c48aff6531834d8366027d32be22e6e40b976eec (diff) | |
download | frameworks_base-78f307d229466bb41c0260d1092dcea82a7bb5f8.zip frameworks_base-78f307d229466bb41c0260d1092dcea82a7bb5f8.tar.gz frameworks_base-78f307d229466bb41c0260d1092dcea82a7bb5f8.tar.bz2 |
rollback AFTER commit causes warning message from sqlite bug:2486731
Diffstat (limited to 'core/jni/android_database_SQLiteDatabase.cpp')
-rw-r--r-- | core/jni/android_database_SQLiteDatabase.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/core/jni/android_database_SQLiteDatabase.cpp b/core/jni/android_database_SQLiteDatabase.cpp index bd55e83..44e091d 100644 --- a/core/jni/android_database_SQLiteDatabase.cpp +++ b/core/jni/android_database_SQLiteDatabase.cpp @@ -367,7 +367,7 @@ static void native_setLocale(JNIEnv* env, jobject object, jstring localeString, if (err != SQLITE_OK) { LOGE("register_localized_collators() failed setting locale\n"); throw_sqlite3_exception(env, handle); - goto done; + goto rollback; } err = sqlite3_exec(handle, "DELETE FROM " ANDROID_TABLE, NULL, NULL, NULL); @@ -415,7 +415,9 @@ static void native_setLocale(JNIEnv* env, jobject object, jstring localeString, } rollback: - sqlite3_exec(handle, "ROLLBACK TRANSACTION", NULL, NULL, NULL); + if (err != SQLITE_OK) { + sqlite3_exec(handle, "ROLLBACK TRANSACTION", NULL, NULL, NULL); + } done: if (locale8 != NULL) env->ReleaseStringUTFChars(localeString, locale8); |