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 added a null check.

Test: started launcher with a forced null title and without.
Bug: 210847986
Change-Id: I4e434816b505b320b78efd90c910bc0a464e6175
diff --git a/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java b/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java
index ecf0bca..7c4624d 100644
--- a/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java
+++ b/iconloaderlib/src/com/android/launcher3/icons/cache/BaseIconCache.java
@@ -265,7 +265,14 @@
         // (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);
+            return;
+        }
+        entry.title = entryTitle;
+
         entry.contentDescription = mPackageManager.getUserBadgedLabel(entry.title, user);
         if (cachingLogic.addToMemCache()) mCache.put(key, entry);