diff options
Diffstat (limited to 'src/com/android/launcher2/LauncherModel.java')
-rw-r--r-- | src/com/android/launcher2/LauncherModel.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/com/android/launcher2/LauncherModel.java b/src/com/android/launcher2/LauncherModel.java index d5505c5fa..7cfab2a17 100644 --- a/src/com/android/launcher2/LauncherModel.java +++ b/src/com/android/launcher2/LauncherModel.java @@ -1301,7 +1301,8 @@ public class LauncherModel extends BroadcastReceiver { final ArrayList<ApplicationInfo> addedFinal = added; mHandler.post(new Runnable() { public void run() { - if (callbacks == mCallbacks.get()) { + Callbacks cb = mCallbacks != null ? mCallbacks.get() : null; + if (callbacks == cb && cb != null) { callbacks.bindAppsAdded(addedFinal); } } @@ -1311,7 +1312,8 @@ public class LauncherModel extends BroadcastReceiver { final ArrayList<ApplicationInfo> modifiedFinal = modified; mHandler.post(new Runnable() { public void run() { - if (callbacks == mCallbacks.get()) { + Callbacks cb = mCallbacks != null ? mCallbacks.get() : null; + if (callbacks == cb && cb != null) { callbacks.bindAppsUpdated(modifiedFinal); } } @@ -1322,7 +1324,8 @@ public class LauncherModel extends BroadcastReceiver { final ArrayList<ApplicationInfo> removedFinal = removed; mHandler.post(new Runnable() { public void run() { - if (callbacks == mCallbacks.get()) { + Callbacks cb = mCallbacks != null ? mCallbacks.get() : null; + if (callbacks == cb && cb != null) { callbacks.bindAppsRemoved(removedFinal, permanent); } } @@ -1332,7 +1335,8 @@ public class LauncherModel extends BroadcastReceiver { mHandler.post(new Runnable() { @Override public void run() { - if (callbacks == mCallbacks.get()) { + Callbacks cb = mCallbacks != null ? mCallbacks.get() : null; + if (callbacks == cb && cb != null) { callbacks.bindPackagesUpdated(); } } |