X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fcore%2Fsqlitestorage.cpp;h=3c58fa3be193f74fd17991bbfceb974336da1ecb;hp=cbcacf7149959875a2f529b9ef3b22bb50d44376;hb=b9ff1ddc759d891d244abf22a6b9d2e8446325bf;hpb=0d2e5ff7439fe7bf9f24f1f55763881382ecb12a diff --git a/src/core/sqlitestorage.cpp b/src/core/sqlitestorage.cpp index cbcacf71..3c58fa3b 100644 --- a/src/core/sqlitestorage.cpp +++ b/src/core/sqlitestorage.cpp @@ -901,15 +901,19 @@ QList SqliteStorage::requestMsgs(UserId user, BufferId bufferId, MsgId return messagelist; QSqlQuery query(logDb()); - if(last == -1) { - query.prepare(queryString("select_messagesNew")); + + if(last == -1 && first == -1) { + query.prepare(queryString("select_messagesNewestK")); + } else if(last == -1) { + query.prepare(queryString("select_messagesNewerThan")); + query.bindValue(":firstmsg", first.toInt()); } else { query.prepare(queryString("select_messages")); query.bindValue(":lastmsg", last.toInt()); + query.bindValue(":firstmsg", first.toInt()); } query.bindValue(":bufferid", bufferId.toInt()); - query.bindValue(":firstmsg", first.toInt()); query.bindValue(":limit", limit); safeExec(query);