From f093c15c69605b1f89cd08c2f5d30793d171ac9e Mon Sep 17 00:00:00 2001 From: Cristina Avila Date: Fri, 12 Mar 2021 13:30:59 -0600 Subject: [PATCH] fix(android): Check proxy on TiDrawableReference fromUrl (#12541) - Fix crash when loading images from url - if proxy is null but url is not, resolve url Fixes TIMOB-28385 --- .../titanium/view/TiDrawableReference.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/android/titanium/src/java/org/appcelerator/titanium/view/TiDrawableReference.java b/android/titanium/src/java/org/appcelerator/titanium/view/TiDrawableReference.java index d46ee1d6834..c35d6985787 100644 --- a/android/titanium/src/java/org/appcelerator/titanium/view/TiDrawableReference.java +++ b/android/titanium/src/java/org/appcelerator/titanium/view/TiDrawableReference.java @@ -20,6 +20,7 @@ import org.appcelerator.kroll.common.Log; import org.appcelerator.titanium.TiApplication; import org.appcelerator.titanium.TiBlob; +import org.appcelerator.titanium.TiC; import org.appcelerator.titanium.TiDimension; import org.appcelerator.titanium.TiFileProxy; import org.appcelerator.titanium.io.TiBaseFile; @@ -157,10 +158,17 @@ public static TiDrawableReference fromBlob(Activity activity, TiBlob blob) */ public static TiDrawableReference fromUrl(KrollProxy proxy, String url) { + Activity activity = TiApplication.getAppCurrentActivity(); + // Attempt to fetch an activity from the given proxy. + if (proxy != null) { + activity = proxy.getActivity(); + } + if (url == null || url.length() == 0 || url.trim().length() == 0) { - return new TiDrawableReference(proxy.getActivity(), DrawableReferenceType.NULL); + return new TiDrawableReference(activity, DrawableReferenceType.NULL); } - return fromUrl(proxy.getActivity(), proxy.resolveUrl(null, url)); + + return fromUrl(activity, TiUrl.resolve(TiC.URL_APP_PREFIX, url, null)); } /**