diff --git a/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java b/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java index 439d56d0b..72f59dec1 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/attachment/AttachmentCreationTask.java @@ -119,7 +119,7 @@ class AttachmentCreationTask { AttachmentItem item = retriever.getAttachmentItem(header, a, needsSize); if (item.hasError()) throw new IOException(); - retriever.cachePut(item); + if (needsSize) retriever.cachePut(item); return new AttachmentItemResult(uri, item); } catch (DbException | IOException e) { logException(LOG, WARNING, e); diff --git a/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java index 9235d579c..59810650e 100644 --- a/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java +++ b/briar-android/src/main/java/org/briarproject/briar/android/conversation/ConversationActivity.java @@ -545,6 +545,8 @@ public class ConversationActivity extends BriarActivity // TODO move getting the items off to IoExecutor, if size == 1 List items = attachmentRetriever.getAttachmentItems(attachments); + if (items.size() == 1) + attachmentRetriever.cachePut(items.get(0)); displayMessageAttachments(messageId, items); } catch (DbException e) { logException(LOG, WARNING, e); @@ -555,9 +557,6 @@ public class ConversationActivity extends BriarActivity private void displayMessageAttachments(MessageId m, List items) { runOnUiThreadUnlessDestroyed(() -> { - for (AttachmentItem item : items) { - attachmentRetriever.cachePut(item); - } Pair pair = adapter.getMessageItem(m); if (pair != null) {