瀏覽代碼

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);
+                    }
                 }
             }
         }