Add null checks for the initializer component in download/install tasks.
Bug: 19819830
Change-Id: I7b0215cd3ee32d57ae10728d588de3f648bd8d8c
diff --git a/src/com/android/managedprovisioning/task/DownloadPackageTask.java b/src/com/android/managedprovisioning/task/DownloadPackageTask.java
index 79185b2..f877d50 100644
--- a/src/com/android/managedprovisioning/task/DownloadPackageTask.java
+++ b/src/com/android/managedprovisioning/task/DownloadPackageTask.java
@@ -77,7 +77,8 @@
params.mDeviceAdminPackageDownloadCookieHeader,
DEVICE_OWNER));
}
- if (!TextUtils.isEmpty(params.mDeviceInitializerPackageDownloadLocation)) {
+ if (params.mDeviceInitializerComponentName != null
+ && !TextUtils.isEmpty(params.mDeviceInitializerPackageDownloadLocation)) {
mDownloads.add(new DownloadInfo(
params.mDeviceInitializerPackageDownloadLocation,
params.mDeviceInitializerPackageChecksum,
diff --git a/src/com/android/managedprovisioning/task/InstallPackageTask.java b/src/com/android/managedprovisioning/task/InstallPackageTask.java
index 5eaa43a..fd15f6e 100644
--- a/src/com/android/managedprovisioning/task/InstallPackageTask.java
+++ b/src/com/android/managedprovisioning/task/InstallPackageTask.java
@@ -59,10 +59,17 @@
mCallback = callback;
mContext = context;
mDeviceAdminPackageName = params.inferDeviceAdminPackageName();
- mDeviceInitializerPackageName = params.mDeviceInitializerComponentName.getPackageName();
mDownloadedAdmin = !TextUtils.isEmpty(params.mDeviceAdminPackageDownloadLocation);
- mDownloadedInitializer =
- !TextUtils.isEmpty(params.mDeviceInitializerPackageDownloadLocation);
+
+ if (params.mDeviceInitializerComponentName != null) {
+ mDeviceInitializerPackageName = params.mDeviceInitializerComponentName.getPackageName();
+ mDownloadedInitializer =
+ !TextUtils.isEmpty(params.mDeviceInitializerPackageDownloadLocation);
+ } else {
+ mDeviceInitializerPackageName = null;
+ mDownloadedInitializer = false;
+ }
+
mPackagesToInstall = new HashSet<InstallInfo>();
}