Fix launcher crash loop.
A null title in a cache entry causes a crash loop, however this title is necessary. Without the title, there is no point to caching the entry. Added logging and removed the null check to catch future errors.
Test: started launcher with a forced null title and without.
Bug: 210847986
Change-Id: Ief8be84254f3115aa4fa288171e8242953f39cd4
diff --git a/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java b/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java
index 3ab0884..3c9ebe5 100644
--- a/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java
+++ b/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java
@@ -261,7 +261,13 @@
// (e.g. fallback icon, default icon). So we drop here since there's no point in caching
// an empty entry.
if (entry.bitmap.isNullOrLowRes()) return;
- entry.title = cachingLogic.getLabel(object);
+
+ CharSequence entryTitle = cachingLogic.getLabel(object);
+ if (entryTitle == null) {
+ Log.d(TAG, "No label returned from caching logic instance: " + cachingLogic);
+ }
+ entry.title = entryTitle;
+
entry.contentDescription = mPackageManager.getUserBadgedLabel(entry.title, user);
if (cachingLogic.addToMemCache()) mCache.put(key, entry);