From 8817b50c956ed6f1ad7a02024d965db0d8188f80 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Tue, 21 Jan 2025 18:56:59 +0100 Subject: [PATCH 1/2] avoid crash in MediaPreviewActivity.onPageUnselected --- .../org/thoughtcrime/securesms/MediaPreviewActivity.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java b/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java index 1f602bf1d..c2a02dbe7 100644 --- a/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java @@ -472,9 +472,12 @@ public void onPageUnselected(int position) { MediaItemAdapter adapter = (MediaItemAdapter)mediaPager.getAdapter(); if (adapter != null) { - MediaItem item = adapter.getMediaItemFor(position); - if (item.recipient != null) item.recipient.removeListener(MediaPreviewActivity.this); - + try { + MediaItem item = adapter.getMediaItemFor(position); + if (item.recipient != null) item.recipient.removeListener(MediaPreviewActivity.this); + } catch (IllegalArgumentException e) { + e.printStackTrace(); + } adapter.pause(position); } } From 2ab567a9d331ecfa597a45b9c487b482facfbd10 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Tue, 21 Jan 2025 19:38:43 +0100 Subject: [PATCH 2/2] use Log instead of stack trace --- .../java/org/thoughtcrime/securesms/MediaPreviewActivity.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java b/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java index c2a02dbe7..c6fe0bbb5 100644 --- a/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java +++ b/src/main/java/org/thoughtcrime/securesms/MediaPreviewActivity.java @@ -476,7 +476,7 @@ public void onPageUnselected(int position) { MediaItem item = adapter.getMediaItemFor(position); if (item.recipient != null) item.recipient.removeListener(MediaPreviewActivity.this); } catch (IllegalArgumentException e) { - e.printStackTrace(); + Log.w(TAG, "Ignoring invalid position index"); } adapter.pause(position); }