summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2015-07-15 17:20:54 -0700
committerSunny Goyal <sunnygoyal@google.com>2015-07-15 17:37:24 -0700
commit7fb55d25e3c183cb39e6b96e6ffbb3cd8a706ede (patch)
tree64aead6041ac397bbb5aa0a0a90d1e5bf5090adf
parent469fea0b390e893c1eb8115ff6c5f997916be4c1 (diff)
downloadandroid_packages_apps_Trebuchet-7fb55d25e3c183cb39e6b96e6ffbb3cd8a706ede.tar.gz
android_packages_apps_Trebuchet-7fb55d25e3c183cb39e6b96e6ffbb3cd8a706ede.tar.bz2
android_packages_apps_Trebuchet-7fb55d25e3c183cb39e6b96e6ffbb3cd8a706ede.zip
[Do NOT MERGE] Fixing AppWidgetInfo not initialized with proper user
Bug: 21673750 Change-Id: I1e03c3cb10a87e394e963cc2001c9c1c293eb2ca
-rw-r--r--src/com/android/launcher3/LauncherModel.java9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/com/android/launcher3/LauncherModel.java b/src/com/android/launcher3/LauncherModel.java
index ee35457b7..1a341e776 100644
--- a/src/com/android/launcher3/LauncherModel.java
+++ b/src/com/android/launcher3/LauncherModel.java
@@ -2215,6 +2215,12 @@ public class LauncherModel extends BroadcastReceiver
int appWidgetId = c.getInt(appWidgetIdIndex);
serialNumber= c.getLong(profileIdIndex);
+ user = mUserManager.getUserForSerialNumber(serialNumber);
+ if (user == null) {
+ // User has been deleted remove the item.
+ itemsToRemove.add(id);
+ continue;
+ }
String savedProvider = c.getString(appWidgetProviderIndex);
id = c.getLong(idIndex);
final ComponentName component =
@@ -2230,7 +2236,7 @@ public class LauncherModel extends BroadcastReceiver
final LauncherAppWidgetProviderInfo provider =
LauncherModel.getProviderInfo(context,
ComponentName.unflattenFromString(savedProvider),
- mUserManager.getUserForSerialNumber(serialNumber));
+ user);
final boolean isProviderReady = isValidProvider(provider);
if (!isSafeMode && !customWidget &&
@@ -2295,6 +2301,7 @@ public class LauncherModel extends BroadcastReceiver
appWidgetInfo.cellY = c.getInt(cellYIndex);
appWidgetInfo.spanX = c.getInt(spanXIndex);
appWidgetInfo.spanY = c.getInt(spanYIndex);
+ appWidgetInfo.user = user;
if (!customWidget) {
int[] minSpan = Launcher.getMinSpanForWidget(context, provider);