aboutsummaryrefslogtreecommitdiff
path: root/libdino/src/service/database.vala
diff options
context:
space:
mode:
authorbobufa <bobufa@users.noreply.github.com>2018-08-13 15:50:50 +0200
committerbobufa <bobufa@users.noreply.github.com>2018-08-13 22:39:18 +0200
commit1d9ce7f471c2aa3a70a9b0255ca39c0ec7a367e2 (patch)
treeccadef886497aa25e86b71416916fe6220dde1dc /libdino/src/service/database.vala
parent2992a12f9fac1a7bf93a7aece5f85285c3b927ff (diff)
downloaddino-1d9ce7f471c2aa3a70a9b0255ca39c0ec7a367e2.tar.gz
dino-1d9ce7f471c2aa3a70a9b0255ca39c0ec7a367e2.zip
sort file transfers into correct conversation
Diffstat (limited to 'libdino/src/service/database.vala')
-rw-r--r--libdino/src/service/database.vala12
1 files changed, 8 insertions, 4 deletions
diff --git a/libdino/src/service/database.vala b/libdino/src/service/database.vala
index 4d8f0bd6..8475cc1b 100644
--- a/libdino/src/service/database.vala
+++ b/libdino/src/service/database.vala
@@ -239,11 +239,15 @@ public class Database : Qlite.Database {
message.body not in (select info from file_transfer where info not null) and
message.id not in (select info from file_transfer where info not null)
union
- select conversation.id, file_transfer.time, file_transfer.local_time, 2, file_transfer.id
- from file_transfer join conversation on
+ select conversation.id, message.time, message.local_time, 2, file_transfer.id
+ from file_transfer
+ join message on
+ file_transfer.info=message.id
+ join conversation on
file_transfer.account_id=conversation.account_id and
- file_transfer.counterpart_id=conversation.jid_id
- order by message.local_time, message.time""");
+ file_transfer.counterpart_id=conversation.jid_id and
+ message.type=conversation.type+1 and
+ (message.counterpart_resource=conversation.resource or message.type != 3)""");
}
}