Adding a few null checks.
  1) During migration, if launcher2 has deleted user data,
migration oes not happen
  2) If Launcher3 does not has bind widget permission,
QSB would be null.

Bug: 18388507
Change-Id: Ief81f6f77ce154e7b3ecd4b77caf24239401e738
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index f5e3bc6..22db3ac 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -3960,11 +3960,11 @@
             SharedPreferences sp = getSharedPreferences(
                     LauncherAppState.getSharedPreferencesKey(), MODE_PRIVATE);
             int widgetId = sp.getInt(QSB_WIDGET_ID, -1);
+            AppWidgetProviderInfo widgetInfo = mAppWidgetManager.getAppWidgetInfo(widgetId);
             if (!searchProvider.provider.flattenToString().equals(
                     sp.getString(QSB_WIDGET_PROVIDER, null))
-                    || (widgetId == -1)
-                    || !mAppWidgetManager.getAppWidgetInfo(widgetId).provider
-                        .equals(searchProvider.provider)) {
+                    || (widgetInfo == null)
+                    || !widgetInfo.provider.equals(searchProvider.provider)) {
                 // A valid widget is not already bound.
                 if (widgetId > -1) {
                     mAppWidgetHost.deleteAppWidgetId(widgetId);
diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java
index cadc06e..1715b02 100644
--- a/src/com/android/launcher3/LauncherProvider.java
+++ b/src/com/android/launcher3/LauncherProvider.java
@@ -1432,6 +1432,12 @@
                                 userHandle = UserHandleCompat.myUserHandle();
                                 userSerialNumber = userManager.getSerialNumberForUser(userHandle);
                             }
+
+                            if (userHandle == null) {
+                                Launcher.addDumpLog(TAG, "skipping deleted user", true);
+                                continue;
+                            }
+
                             Launcher.addDumpLog(TAG, "migrating \""
                                 + c.getString(titleIndex) + "\" ("
                                 + cellX + "," + cellY + "@"
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index c24e271..2b520c5 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -2449,8 +2449,10 @@
                 pageIndicator.setAlpha(finalHotseatAndPageIndicatorAlpha);
                 AlphaUpdateListener.updateVisibility(pageIndicator);
             }
-            searchBar.setAlpha(finalSearchBarAlpha);
-            AlphaUpdateListener.updateVisibility(searchBar);
+            if (searchBar != null) {
+                searchBar.setAlpha(finalSearchBarAlpha);
+                AlphaUpdateListener.updateVisibility(searchBar);
+            }
             updateCustomContentVisibility();
             setScaleX(mNewScale);
             setScaleY(mNewScale);