diff options
Diffstat (limited to 'src/com/android/launcher3/SessionCommitReceiver.java')
-rw-r--r-- | src/com/android/launcher3/SessionCommitReceiver.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/com/android/launcher3/SessionCommitReceiver.java b/src/com/android/launcher3/SessionCommitReceiver.java index b4078ee0e..a87c44658 100644 --- a/src/com/android/launcher3/SessionCommitReceiver.java +++ b/src/com/android/launcher3/SessionCommitReceiver.java @@ -22,7 +22,6 @@ import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; -import android.content.pm.ApplicationInfo; import android.content.pm.LauncherActivityInfo; import android.content.pm.PackageInstaller; import android.content.pm.PackageInstaller.SessionInfo; @@ -39,6 +38,7 @@ import android.text.TextUtils; import android.util.Log; import com.android.launcher3.compat.LauncherAppsCompat; +import com.android.launcher3.util.Executors; import com.android.launcher3.compat.PackageInstallerCompat; import java.util.List; @@ -71,8 +71,13 @@ public class SessionCommitReceiver extends BroadcastReceiver { SessionInfo info = intent.getParcelableExtra(PackageInstaller.EXTRA_SESSION); UserHandle user = intent.getParcelableExtra(Intent.EXTRA_USER); - PackageInstallerCompat packageInstallerCompat = PackageInstallerCompat.getInstance(context); + if (!PackageInstaller.ACTION_SESSION_COMMITTED.equals(intent.getAction()) + || info == null || user == null) { + // Invalid intent. + return; + } + PackageInstallerCompat packageInstallerCompat = PackageInstallerCompat.getInstance(context); if (TextUtils.isEmpty(info.getAppPackageName()) || info.getInstallReason() != PackageManager.INSTALL_REASON_USER || packageInstallerCompat.promiseIconAddedForId(info.getSessionId())) { @@ -133,7 +138,7 @@ public class SessionCommitReceiver extends BroadcastReceiver { // grid. prefs.edit().putBoolean(ADD_ICON_PREFERENCE_KEY, true).apply(); } else if (!prefs.contains(ADD_ICON_PREFERENCE_INITIALIZED_KEY)) { - new PrefInitTask(context).executeOnExecutor(Utilities.THREAD_POOL_EXECUTOR); + new PrefInitTask(context).executeOnExecutor(Executors.THREAD_POOL_EXECUTOR); } } |