0
0
mirror of https://github.com/ankidroid/Anki-Android.git synced 2024-09-20 12:02:16 +02:00

NF. make safeEndInTransaction a SupportSQLiteDatabase method

This commit is contained in:
Arthur Milchior 2023-05-08 23:51:28 +02:00 committed by David Allison
parent 644d32f74c
commit 456b9caa42
2 changed files with 7 additions and 6 deletions

View File

@ -31,6 +31,7 @@ import com.ichi2.compat.CompatHelper.Companion.isMarshmallow
import com.ichi2.libanki.*
import com.ichi2.libanki.Collection
import com.ichi2.libanki.Consts.BUTTON_TYPE
import com.ichi2.libanki.DB.Companion.safeEndInTransaction
import com.ichi2.libanki.Models.AllowEmpty
import com.ichi2.libanki.backend.exception.DeckRenameException
import com.ichi2.libanki.exception.EmptyMediaException
@ -759,7 +760,7 @@ class CardContentProvider : ContentProvider() {
sqldb.setTransactionSuccessful()
result
} finally {
DB.safeEndInTransaction(sqldb)
sqldb.safeEndInTransaction()
}
}

View File

@ -267,11 +267,11 @@ class DB(db: SupportSQLiteDatabase) {
}
return result
} finally {
safeEndInTransaction(database)
database.safeEndInTransaction()
}
}
fun safeEndInTransaction() {
safeEndInTransaction(database)
database.safeEndInTransaction()
}
companion object {
@ -299,10 +299,10 @@ class DB(db: SupportSQLiteDatabase) {
return DB(AnkiSupportSQLiteDatabase.withRustBackend(backend))
}
fun safeEndInTransaction(database: SupportSQLiteDatabase) {
if (database.inTransaction()) {
fun SupportSQLiteDatabase.safeEndInTransaction() {
if (inTransaction()) {
try {
database.endTransaction()
endTransaction()
} catch (e: Exception) {
// endTransaction throws about invalid transaction even when you check first!
Timber.w(e)