From 786fd3f47db849496ca3c0061f86be8bb2ca7265 Mon Sep 17 00:00:00 2001 From: adbenitez Date: Sat, 9 Aug 2025 15:24:02 +0200 Subject: [PATCH] avoid NPE in DecryptableUri --- .../thoughtcrime/securesms/components/QuoteView.java | 12 +++++++----- .../securesms/scribbles/UriGlideRenderer.java | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/org/thoughtcrime/securesms/components/QuoteView.java b/src/main/java/org/thoughtcrime/securesms/components/QuoteView.java index 38489ba2e..b4ba1ad84 100644 --- a/src/main/java/org/thoughtcrime/securesms/components/QuoteView.java +++ b/src/main/java/org/thoughtcrime/securesms/components/QuoteView.java @@ -237,11 +237,13 @@ public class QuoteView extends FrameLayout implements RecipientForeverObserver { MediaUtil.createVideoThumbnailIfNeeded(getContext(), slide.getUri(), slide.getThumbnailUri(), null); thumbnailUri = slide.getThumbnailUri(); } - glideRequests.load(new DecryptableUri(thumbnailUri)) - .centerCrop() - .override(getContext().getResources().getDimensionPixelSize(R.dimen.quote_thumb_size)) - .diskCacheStrategy(DiskCacheStrategy.RESOURCE) - .into(thumbnailView); + if (thumbnailUri != null) { + glideRequests.load(new DecryptableUri(thumbnailUri)) + .centerCrop() + .override(getContext().getResources().getDimensionPixelSize(R.dimen.quote_thumb_size)) + .diskCacheStrategy(DiskCacheStrategy.RESOURCE) + .into(thumbnailView); + } } } else if(slide != null && slide.hasAudio()) { thumbnailView.setVisibility(GONE); diff --git a/src/main/java/org/thoughtcrime/securesms/scribbles/UriGlideRenderer.java b/src/main/java/org/thoughtcrime/securesms/scribbles/UriGlideRenderer.java index 3aaf91267..b822122df 100644 --- a/src/main/java/org/thoughtcrime/securesms/scribbles/UriGlideRenderer.java +++ b/src/main/java/org/thoughtcrime/securesms/scribbles/UriGlideRenderer.java @@ -179,7 +179,7 @@ final class UriGlideRenderer implements Renderer { .diskCacheStrategy(DiskCacheStrategy.NONE) .override(width, height) .centerInside() - .load(decryptable ? new DecryptableStreamUriLoader.DecryptableUri(imageUri) : imageUri); + .load(decryptable && imageUri!=null ? new DecryptableStreamUriLoader.DecryptableUri(imageUri) : imageUri); } @Override