diff options
author | Christian S <kriztan@users.noreply.github.com> | 2016-01-06 22:01:09 +0100 |
---|---|---|
committer | Christian S <kriztan@users.noreply.github.com> | 2016-01-06 22:01:09 +0100 |
commit | c9c7383956f4770ea0ede90fcc08ca295d9882eb (patch) | |
tree | a2de1b10f2671ead2d1aeb35ed8129cf4814c095 /src | |
parent | 6ec2b6e0fe5940bad1ad42bde8ea8ecc0f2a1ad4 (diff) | |
parent | c59eb75a59d2fbddea2a42e7d2435e7312f5c759 (diff) |
Merge pull request #61 from siacs/master
copy commits
Diffstat (limited to 'src')
4 files changed, 16 insertions, 4 deletions
diff --git a/src/main/java/eu/siacs/conversations/entities/Conversation.java b/src/main/java/eu/siacs/conversations/entities/Conversation.java index bc7f302ae..7685d896b 100644 --- a/src/main/java/eu/siacs/conversations/entities/Conversation.java +++ b/src/main/java/eu/siacs/conversations/entities/Conversation.java @@ -707,8 +707,16 @@ public class Conversation extends AbstractEntity implements Blockable { synchronized (this.messages) { for (int i = this.messages.size() - 1; i >= 0; --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)) { - return message; + if (message.getStatus() == Message.STATUS_UNSEND || message.getStatus() == Message.STATUS_SEND) { + String otherBody; + if (message.hasFileOnRemoteHost()) { + otherBody = message.getFileParams().url.toString(); + } else { + otherBody = message.body; + } + if (otherBody != null && otherBody.equals(body)) { + return message; + } } } return null; diff --git a/src/main/java/eu/siacs/conversations/persistance/FileBackend.java b/src/main/java/eu/siacs/conversations/persistance/FileBackend.java index b18a28444..5366fdee7 100644 --- a/src/main/java/eu/siacs/conversations/persistance/FileBackend.java +++ b/src/main/java/eu/siacs/conversations/persistance/FileBackend.java @@ -152,7 +152,6 @@ public class FileBackend { } public String getOriginalPath(Uri uri) { - Log.d(Config.LOGTAG,"get original path for uri: "+uri.toString()); return FileUtils.getPath(mXmppConnectionService,uri); } diff --git a/src/main/java/eu/siacs/conversations/services/NotificationService.java b/src/main/java/eu/siacs/conversations/services/NotificationService.java index b69e5f79e..b43b9f93c 100644 --- a/src/main/java/eu/siacs/conversations/services/NotificationService.java +++ b/src/main/java/eu/siacs/conversations/services/NotificationService.java @@ -115,7 +115,9 @@ public class NotificationService { public void pushFromBacklog(final Message message) { if (notify(message)) { - pushToStack(message); + synchronized (notifications) { + pushToStack(message); + } } } diff --git a/src/main/java/eu/siacs/conversations/utils/FileUtils.java b/src/main/java/eu/siacs/conversations/utils/FileUtils.java index c29841112..ad8b8640f 100644 --- a/src/main/java/eu/siacs/conversations/utils/FileUtils.java +++ b/src/main/java/eu/siacs/conversations/utils/FileUtils.java @@ -23,6 +23,9 @@ public class FileUtils { */ @SuppressLint("NewApi") public static String getPath(final Context context, final Uri uri) { + if (uri == null) { + return null; + } final boolean isKitKat = Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT; |