diff options
Diffstat (limited to 'src/eu/siacs/conversations/entities/Message.java')
-rw-r--r-- | src/eu/siacs/conversations/entities/Message.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/eu/siacs/conversations/entities/Message.java b/src/eu/siacs/conversations/entities/Message.java index ce496d27..8f9885c5 100644 --- a/src/eu/siacs/conversations/entities/Message.java +++ b/src/eu/siacs/conversations/entities/Message.java @@ -246,9 +246,10 @@ public class Message extends AbstractEntity { public void setPresence(String presence) { if (presence == null) { - this.counterpart = this.counterpart.split("/")[0]; + this.counterpart = this.counterpart.split("/", 2)[0]; } else { - this.counterpart = this.counterpart.split("/")[0] + "/" + presence; + this.counterpart = this.counterpart.split("/", 2)[0] + "/" + + presence; } } @@ -257,7 +258,7 @@ public class Message extends AbstractEntity { } public String getPresence() { - String[] counterparts = this.counterpart.split("/"); + String[] counterparts = this.counterpart.split("/", 2); if (counterparts.length == 2) { return counterparts[1]; } else { @@ -327,11 +328,11 @@ public class Message extends AbstractEntity { && this.getEncryption() == message.getEncryption() && this.getCounterpart().equals(message.getCounterpart()) && (message.getTimeSent() - this.getTimeSent()) <= (Config.MESSAGE_MERGE_WINDOW * 1000) && ((this - .getStatus() == message.getStatus()) || ((this.getStatus() == Message.STATUS_SEND || this + .getStatus() == message.getStatus() || ((this.getStatus() == Message.STATUS_SEND || this .getStatus() == Message.STATUS_SEND_RECEIVED) && (message .getStatus() == Message.STATUS_UNSEND || message.getStatus() == Message.STATUS_SEND || message - .getStatus() == Message.STATUS_SEND_DISPLAYED)))); + .getStatus() == Message.STATUS_SEND_DISPLAYED))))); } public String getMergedBody() { |