mirror of
https://github.com/null2264/yokai.git
synced 2025-06-21 10:44:42 +00:00
more db fixes to crashes when exiting reader
oh i just cant wait to use room
This commit is contained in:
parent
55184dce10
commit
1ddcc77449
2 changed files with 9 additions and 8 deletions
|
@ -3,6 +3,7 @@ package eu.kanade.tachiyomi.data.database.queries
|
|||
import com.pushtorefresh.storio.sqlite.queries.DeleteQuery
|
||||
import com.pushtorefresh.storio.sqlite.queries.RawQuery
|
||||
import eu.kanade.tachiyomi.data.database.DbProvider
|
||||
import eu.kanade.tachiyomi.data.database.inTransactionReturn
|
||||
import eu.kanade.tachiyomi.data.database.models.History
|
||||
import eu.kanade.tachiyomi.data.database.models.MangaChapterHistory
|
||||
import eu.kanade.tachiyomi.data.database.resolvers.HistoryUpsertResolver
|
||||
|
@ -164,10 +165,12 @@ interface HistoryQueries : DbProvider {
|
|||
* Inserts history object if not yet in database
|
||||
* @param historyList history object list
|
||||
*/
|
||||
fun upsertHistoryLastRead(historyList: List<History>) = db.put()
|
||||
.objects(historyList)
|
||||
.withPutResolver(HistoryUpsertResolver())
|
||||
.prepare()
|
||||
fun upsertHistoryLastRead(historyList: List<History>) = db.inTransactionReturn {
|
||||
db.put()
|
||||
.objects(historyList)
|
||||
.withPutResolver(HistoryUpsertResolver())
|
||||
.prepare()
|
||||
}
|
||||
|
||||
fun deleteHistory() = db.delete()
|
||||
.byQuery(
|
||||
|
|
|
@ -1,12 +1,10 @@
|
|||
package eu.kanade.tachiyomi.data.database.resolvers
|
||||
|
||||
import androidx.annotation.NonNull
|
||||
import androidx.core.content.contentValuesOf
|
||||
import com.pushtorefresh.storio.sqlite.StorIOSQLite
|
||||
import com.pushtorefresh.storio.sqlite.operations.put.PutResult
|
||||
import com.pushtorefresh.storio.sqlite.queries.Query
|
||||
import com.pushtorefresh.storio.sqlite.queries.UpdateQuery
|
||||
import eu.kanade.tachiyomi.data.database.inTransactionReturn
|
||||
import eu.kanade.tachiyomi.data.database.mappers.HistoryPutResolver
|
||||
import eu.kanade.tachiyomi.data.database.models.History
|
||||
import eu.kanade.tachiyomi.data.database.tables.HistoryTable
|
||||
|
@ -16,7 +14,7 @@ class HistoryUpsertResolver : HistoryPutResolver() {
|
|||
/**
|
||||
* Updates last_read time of chapter
|
||||
*/
|
||||
override fun performPut(@NonNull db: StorIOSQLite, @NonNull history: History): PutResult = db.inTransactionReturn {
|
||||
override fun performPut(db: StorIOSQLite, history: History): PutResult {
|
||||
val updateQuery = mapToUpdateQuery(history)
|
||||
|
||||
val cursor = db.lowLevel().query(
|
||||
|
@ -27,7 +25,7 @@ class HistoryUpsertResolver : HistoryPutResolver() {
|
|||
.build(),
|
||||
)
|
||||
|
||||
cursor.use { putCursor ->
|
||||
return cursor.use { putCursor ->
|
||||
if (putCursor.count == 0) {
|
||||
val insertQuery = mapToInsertQuery(history)
|
||||
val insertedId = db.lowLevel().insert(insertQuery, mapToContentValues(history))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue