From d3e07eee1335822643d7086b95590b60a4e002c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Fri, 16 Feb 2018 00:56:07 +0100 Subject: Sort archive messages by date (and only then by id) fix #3337 Because apparently the IDs are not always incrementing. We still use them to know the order of two messages that were received at the same second (in this case, the ID will always be incrementing). --- src/database/database.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/database/database.cpp b/src/database/database.cpp index b2413d0..d19ed7a 100644 --- a/src/database/database.cpp +++ b/src/database/database.cpp @@ -197,11 +197,10 @@ std::vector Database::get_muc_logs(const std::string& owne request << reference_record_id; } - request.order_by() << Id{}; if (paging == Database::Paging::first) - request << " ASC "; + request.order_by() << Database::Date{} << " ASC, " << Id{} << " ASC "; else - request << " DESC "; + request.order_by() << Database::Date{} << " DESC, " << Id{} << " DESC "; if (limit >= 0) request.limit() << limit; -- cgit v1.2.3