فهرست منبع

Fix NPE on weakref in ThumbnailsCacheManger

Listener reference was weak and there was no check for null,
causing an NPE.

Fixes #3994

Signed-off-by: Chris Narkiewicz <hello@ezaquarii.com>
Chris Narkiewicz 6 سال پیش
والد
کامیت
95689c46e8
1فایلهای تغییر یافته به همراه5 افزوده شده و 4 حذف شده
  1. 5 4
      src/main/java/com/owncloud/android/datamodel/ThumbnailsCacheManager.java

+ 5 - 4
src/main/java/com/owncloud/android/datamodel/ThumbnailsCacheManager.java

@@ -841,10 +841,11 @@ public final class ThumbnailsCacheManager {
         protected void onPostExecute(Drawable drawable) {
             if (drawable != null) {
                 AvatarGenerationListener listener = mAvatarGenerationListener.get();
-                AvatarGenerationTask avatarWorkerTask = getAvatarWorkerTask(mCallContext);
-
-                if (this == avatarWorkerTask && listener.shouldCallGeneratedCallback(mUserId, mCallContext)) {
-                    listener.avatarGenerated(drawable, mCallContext);
+                if (listener != null) {
+                    AvatarGenerationTask avatarWorkerTask = getAvatarWorkerTask(mCallContext);
+                    if (this == avatarWorkerTask && listener.shouldCallGeneratedCallback(mUserId, mCallContext)) {
+                        listener.avatarGenerated(drawable, mCallContext);
+                    }
                 }
             }
         }