diff --git a/src/main/java/eu/siacs/conversations/persistance/DatabaseBackend.java b/src/main/java/eu/siacs/conversations/persistance/DatabaseBackend.java index 121bdc0c210313b4c98571125797cbf6a45646b1..aa335514aab7818503a8b49461d7f09e51a6d684 100644 --- a/src/main/java/eu/siacs/conversations/persistance/DatabaseBackend.java +++ b/src/main/java/eu/siacs/conversations/persistance/DatabaseBackend.java @@ -1107,9 +1107,12 @@ public class DatabaseBackend extends SQLiteOpenHelper { "SELECT * FROM " + Message.TABLENAME + " " + "LEFT JOIN cheogram." + Message.TABLENAME + " USING (" + Message.UUID + ")" + - "WHERE " + Message.CONVERSATION + "=? " + + " WHERE " + Message.UUID + " IN (" + + "SELECT " + Message.UUID + " FROM " + Message.TABLENAME + + " WHERE " + Message.CONVERSATION + "=? " + "ORDER BY " + Message.TIME_SENT + " DESC " + - "LIMIT " + String.valueOf(limit), + "LIMIT " + String.valueOf(limit) + ") " + + "ORDER BY " + Message.TIME_SENT + " DESC ", selectionArgs ); } else { @@ -1119,10 +1122,13 @@ public class DatabaseBackend extends SQLiteOpenHelper { "SELECT * FROM " + Message.TABLENAME + " " + "LEFT JOIN cheogram." + Message.TABLENAME + " USING (" + Message.UUID + ")" + - "WHERE " + Message.CONVERSATION + "=? AND " + + " WHERE " + Message.UUID + " IN (" + + "SELECT " + Message.UUID + " FROM " + Message.TABLENAME + + " WHERE " + Message.CONVERSATION + "=? AND " + Message.TIME_SENT + "