From 3945fb2fd967254518ede49aa879a091e0ab9141 Mon Sep 17 00:00:00 2001 From: Tom Hennen Date: Thu, 18 Jun 2015 18:29:58 -0400 Subject: Fallback for picasso even if we think it's impossible. Fixes AntennaPod/AntennaPod#891 --- .../java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'core') diff --git a/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java b/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java index e454cec7d..246adb4c1 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java +++ b/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java @@ -162,6 +162,14 @@ public class PicassoProvider { } if (bitmap == null) { + // this should never, happen, but sometimes it does, so fallback + // check for fallback Uri + String fallbackParam = data.uri.getQueryParameter(PicassoImageResource.PARAM_FALLBACK); + if (fallbackParam != null) { + Uri fallback = Uri.parse(fallbackParam); + bitmap = decodeStreamFromFile(data, fallback); + } + Log.wtf(TAG, "THIS SHOULD NEVER EVER HAPPEN!!"); } return new Result(bitmap, Picasso.LoadedFrom.DISK); -- cgit v1.2.3 From aa789fa51dde0887f8f4785fdcf431ab91bcbf8f Mon Sep 17 00:00:00 2001 From: Tom Hennen Date: Fri, 19 Jun 2015 17:24:07 -0400 Subject: Have to set the fallback URL --- core/src/main/java/de/danoeh/antennapod/core/feed/FeedMedia.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'core') diff --git a/core/src/main/java/de/danoeh/antennapod/core/feed/FeedMedia.java b/core/src/main/java/de/danoeh/antennapod/core/feed/FeedMedia.java index 067095c32..999340900 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/feed/FeedMedia.java +++ b/core/src/main/java/de/danoeh/antennapod/core/feed/FeedMedia.java @@ -414,6 +414,14 @@ public class FeedMedia extends FeedFile implements Playable { if (hasEmbeddedPicture()) { Uri.Builder builder = new Uri.Builder(); builder.scheme(SCHEME_MEDIA).encodedPath(getLocalMediaUrl()); + + if (item != null && item.getFeed() != null) { + final Uri feedImgUri = item.getFeed().getImageUri(); + if (feedImgUri != null) { + builder.appendQueryParameter(PARAM_FALLBACK, feedImgUri.toString()); + } + } + return builder.build(); } else { return item.getImageUri(); -- cgit v1.2.3 From 3d411388e6a2ba98f84bbf74d9e34baf7cd195c1 Mon Sep 17 00:00:00 2001 From: Tom Hennen Date: Fri, 19 Jun 2015 23:28:33 -0400 Subject: remove log message --- .../main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java | 2 -- 1 file changed, 2 deletions(-) (limited to 'core') diff --git a/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java b/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java index 246adb4c1..09fe0d654 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java +++ b/core/src/main/java/de/danoeh/antennapod/core/asynctask/PicassoProvider.java @@ -169,8 +169,6 @@ public class PicassoProvider { Uri fallback = Uri.parse(fallbackParam); bitmap = decodeStreamFromFile(data, fallback); } - - Log.wtf(TAG, "THIS SHOULD NEVER EVER HAPPEN!!"); } return new Result(bitmap, Picasso.LoadedFrom.DISK); -- cgit v1.2.3