avoid duplicate messages when sending files to mucs. fixes #1635

This commit is contained in:
Daniel Gultsch 2016-01-06 12:59:13 +01:00
parent c3e2d2cfba
commit c59eb75a59

View file

@ -693,8 +693,16 @@ public class Conversation extends AbstractEntity implements Blockable {
synchronized (this.messages) { synchronized (this.messages) {
for (int i = this.messages.size() - 1; i >= 0; --i) { for (int i = this.messages.size() - 1; i >= 0; --i) {
Message message = this.messages.get(i); Message message = this.messages.get(i);
if ((message.getStatus() == Message.STATUS_UNSEND || message.getStatus() == Message.STATUS_SEND) && message.getBody() != null && message.getBody().equals(body)) { if (message.getStatus() == Message.STATUS_UNSEND || message.getStatus() == Message.STATUS_SEND) {
return message; String otherBody;
if (message.hasFileOnRemoteHost()) {
otherBody = message.getFileParams().url.toString();
} else {
otherBody = message.body;
}
if (otherBody != null && otherBody.equals(body)) {
return message;
}
} }
} }
return null; return null;