From 79beadb952122abe4f94970dedfd584481418f66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20=C3=81ngel=20San=20Mart=C3=ADn?= Date: Wed, 27 Sep 2017 19:29:16 +0200 Subject: [PATCH] Fixed crash in update comic controller, it looks like something has changed in how qt manages sql queries when the go out of scope, a call to clear releases everything and the crash doesn't happen anymore. I have to see if it is a good idea to call clear always.... --- YACReaderLibrary/db_helper.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/YACReaderLibrary/db_helper.cpp b/YACReaderLibrary/db_helper.cpp index 5340671a..f4621918 100644 --- a/YACReaderLibrary/db_helper.cpp +++ b/YACReaderLibrary/db_helper.cpp @@ -243,6 +243,9 @@ void DBHelper::update(qulonglong libraryId, ComicInfo & comicInfo) void DBHelper::update(ComicInfo * comicInfo, QSqlDatabase & db) { + if(comicInfo == nullptr) + return; + QSqlQuery updateComicInfo(db); updateComicInfo.prepare("UPDATE comic_info SET " "title = :title," @@ -385,7 +388,7 @@ void DBHelper::updateProgress(qulonglong libraryId, const ComicInfo &comicInfo) comic.info.currentPage = comicInfo.currentPage; comic.info.hasBeenOpened = true; - DBHelper::update(&comic.info,db); + DBHelper::updateReadingRemoteProgress(comic.info,db); db.close(); QSqlDatabase::removeDatabase(libraryPath); @@ -407,6 +410,8 @@ void DBHelper::updateReadingRemoteProgress(const ComicInfo &comicInfo, QSqlDatab updateComicInfo.bindValue(":id", comicInfo.id); updateComicInfo.bindValue(":rating", comicInfo.rating); updateComicInfo.exec(); + + updateComicInfo.clear(); }