sync around Conversation.getLatestMessage()

This commit is contained in:
Daniel Gultsch 2017-07-11 23:09:51 +02:00
parent 4d1b6d4404
commit 8de81e0bc8

View file

@ -470,15 +470,17 @@ public class Conversation extends AbstractEntity implements Blockable, Comparabl
} }
public Message getLatestMessage() { public Message getLatestMessage() {
synchronized (this.messages) {
if (this.messages.size() == 0) { if (this.messages.size() == 0) {
Message message = new Message(this, "", Message.ENCRYPTION_NONE); Message message = new Message(this, "", Message.ENCRYPTION_NONE);
message.setType(Message.TYPE_STATUS); message.setType(Message.TYPE_STATUS);
message.setTime(Math.max(getCreated(),getLastClearHistory().getTimestamp())); message.setTime(Math.max(getCreated(), getLastClearHistory().getTimestamp()));
return message; return message;
} else { } else {
return this.messages.get(this.messages.size() - 1); return this.messages.get(this.messages.size() - 1);
} }
} }
}
public String getName() { public String getName() {
if (getMode() == MODE_MULTI) { if (getMode() == MODE_MULTI) {