From 68226b79c50f8c726785286dbf80c44dda123ffb Mon Sep 17 00:00:00 2001 From: Artem Shvadskiy Date: Wed, 13 Jan 2016 11:51:55 -0800 Subject: Fix a crash when moving from overlay to non-overlay installation. Change-Id: Ia41f230078333e1ac67c360a6a4030550380e522 --- src/com/android/launcher3/FolderIcon.java | 4 ++++ src/com/android/launcher3/Launcher.java | 8 +++++--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/com/android/launcher3/FolderIcon.java b/src/com/android/launcher3/FolderIcon.java index a166b1819..c9f7556c1 100644 --- a/src/com/android/launcher3/FolderIcon.java +++ b/src/com/android/launcher3/FolderIcon.java @@ -173,6 +173,10 @@ public class FolderIcon extends FrameLayout implements FolderListener { Folder folder; if (folderInfo.isRemote()) { folder = launcher.getRemoteFolderManager().createRemoteFolder(icon, launcher.getDragLayer()); + if (folder == null) { + LauncherModel.deleteItemFromDatabase(launcher, folderInfo); + return null; + } } else { folder = Folder.fromXml(launcher, launcher.getDragLayer()); } diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 6618c75a6..43da26152 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -4948,9 +4948,11 @@ public class Launcher extends Activity final FolderIcon newFolder = FolderIcon.fromXml(R.layout.folder_icon, this, (ViewGroup) workspace.getChildAt(workspace.getCurrentPage()), (FolderInfo) item, mIconCache); - newFolder.setTextVisible(!mHideIconLabels); - workspace.addInScreenFromBind(newFolder, item.container, item.screenId, item.cellX, - item.cellY, 1, 1); + if (newFolder != null) { + newFolder.setTextVisible(!mHideIconLabels); + workspace.addInScreenFromBind(newFolder, item.container, item.screenId, item.cellX, + item.cellY, 1, 1); + } break; default: throw new RuntimeException("Invalid Item Type"); -- cgit v1.2.3