From a5b9d7f3893413771b77172db819118571b084e0 Mon Sep 17 00:00:00 2001 From: Shane Synan Date: Sun, 5 Mar 2017 13:39:38 -0600 Subject: [PATCH] core: Fix Postgres messagesNewerThan wrong buffer Make the inner SELECT statement use the buffer ID for bufferid, NOT the messageid. This fixes select_messagesNewerThan using the wrong variable for the buffer ID, causing more recent messages to not show up when fetching backlog with the "Unread messages" method. Fixes regression in pull request #273, missed by pull request #274. NOTE: The client still needs fixed to stop sending invalid IDs. That should be addressed with another set of commits. See https://github.com/quassel/quassel/pull/274#issuecomment-284205802 --- src/core/SQL/PostgreSQL/20/select_messagesNewerThan.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/core/SQL/PostgreSQL/20/select_messagesNewerThan.sql b/src/core/SQL/PostgreSQL/20/select_messagesNewerThan.sql index 881ce5e4..571f5383 100644 --- a/src/core/SQL/PostgreSQL/20/select_messagesNewerThan.sql +++ b/src/core/SQL/PostgreSQL/20/select_messagesNewerThan.sql @@ -2,7 +2,7 @@ SELECT messageid, time, type, flags, sender, message FROM backlog JOIN sender ON backlog.senderid = sender.senderid WHERE backlog.messageid >= $1 -AND backlog.messageid <= (SELECT buffer.lastmsgid FROM buffer WHERE buffer.bufferid = $1) +AND backlog.messageid <= (SELECT buffer.lastmsgid FROM buffer WHERE buffer.bufferid = $2) AND bufferid = $2 ORDER BY messageid DESC LIMIT $3 -- 2.20.1