X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.cpp;h=5c483e3d9b3f444d32cf5a6703aa1da2b4e396ce;hp=66c85dc0a774c90c4f1698aceafed47c61760ee7;hb=9ba2ca5186c8598e33910a7df95bbdbf812a1a3d;hpb=e5d6f457a0f3eef578dcb9d7e4a3db61826dc232 diff --git a/src/core/sqlitestorage.cpp b/src/core/sqlitestorage.cpp index 66c85dc0..5c483e3d 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 */ + [[clang::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; }