소스 검색

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