X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.cpp;h=473f66e535948e8818e98e6cb9ac813138c651a7;hb=71d3d0d705a853fa8fea3729e13dbddf52363417;hp=66c85dc0a774c90c4f1698aceafed47c61760ee7;hpb=e5d6f457a0f3eef578dcb9d7e4a3db61826dc232;p=quassel.git diff --git a/src/core/sqlitestorage.cpp b/src/core/sqlitestorage.cpp index 66c85dc0..473f66e5 100644 --- a/src/core/sqlitestorage.cpp +++ b/src/core/sqlitestorage.cpp @@ -1503,7 +1503,7 @@ QHash SqliteStorage::bufferMarkerLineMsgIds(UserId user) return markerLineHash; } -void SqliteStorage::setBufferActivity(UserId user, const BufferId &bufferId, const int &bufferActivity) +void SqliteStorage::setBufferActivity(UserId user, BufferId bufferId, Message::Types bufferActivity) { QSqlDatabase db = logDb(); db.transaction(); @@ -1513,7 +1513,7 @@ void SqliteStorage::setBufferActivity(UserId user, const BufferId &bufferId, con query.prepare(queryString("update_buffer_bufferactivity")); query.bindValue(":userid", user.toInt()); query.bindValue(":bufferid", bufferId.toInt()); - query.bindValue(":bufferactivity", bufferActivity); + query.bindValue(":bufferactivity", (int) bufferActivity); lockForWrite(); safeExec(query); @@ -1524,9 +1524,9 @@ void SqliteStorage::setBufferActivity(UserId user, const BufferId &bufferId, con } -QHash SqliteStorage::bufferActivities(UserId user) +QHash SqliteStorage::bufferActivities(UserId user) { - QHash bufferActivityHash; + QHash bufferActivityHash; QSqlDatabase db = logDb(); db.transaction(); @@ -1542,7 +1542,7 @@ QHash SqliteStorage::bufferActivities(UserId user) error = !watchQuery(query); if (!error) { while (query.next()) { - bufferActivityHash[query.value(0).toInt()] = (Message::Type) query.value(1).toInt(); + bufferActivityHash[query.value(0).toInt()] = Message::Types(query.value(1).toInt()); } } } @@ -1553,12 +1553,12 @@ QHash SqliteStorage::bufferActivities(UserId user) } -int SqliteStorage::bufferActivity(BufferId &bufferId, MsgId &lastSeenMsgId) +Message::Types SqliteStorage::bufferActivity(BufferId bufferId, MsgId lastSeenMsgId) { QSqlDatabase db = logDb(); db.transaction(); - int result = 0; + Message::Types result = Message::Types(0); { QSqlQuery query(db); query.prepare(queryString("select_buffer_bufferactivity")); @@ -1568,7 +1568,7 @@ int SqliteStorage::bufferActivity(BufferId &bufferId, MsgId &lastSeenMsgId) lockForRead(); safeExec(query); if (query.first()) - result = query.value(0).toInt(); + result = Message::Types(query.value(0).toInt()); } db.commit(); @@ -1836,12 +1836,15 @@ bool SqliteStorage::safeExec(QSqlQuery &query, int retryCount) switch (query.lastError().number()) { case 5: // SQLITE_BUSY 5 /* The database file is locked */ + [[fallthrough]]; case 6: // SQLITE_LOCKED 6 /* A table in the database is locked */ if (retryCount < _maxRetryCount) return safeExec(query, retryCount + 1); + break; default: - return false; + ; } + return false; }