diff --git a/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java b/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java index 2fd807d3c7..d60531732d 100644 --- a/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java +++ b/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java @@ -47,6 +47,7 @@ import com.android.launcher3.model.data.FolderInfo; import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.LauncherAppWidgetInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; +import com.android.launcher3.util.Executors; import com.android.launcher3.util.IntSparseArrayMap; import com.android.launcher3.util.LogConfig; import com.android.systemui.shared.system.SysUiStatsLog; @@ -124,11 +125,14 @@ public class StatsLogCompatManager extends StatsLogManager { writeSnapshot(atomInfo, mInstanceId); } for (FolderInfo fInfo : folders) { - ArrayList folderContents = (ArrayList) fInfo.contents.clone(); - for (ItemInfo info : folderContents) { - LauncherAtom.ItemInfo atomInfo = info.buildProto(fInfo); - writeSnapshot(atomInfo, mInstanceId); - } + try { + ArrayList folderContents = + (ArrayList) Executors.MAIN_EXECUTOR.submit(fInfo.contents::clone).get(); + for (ItemInfo info : folderContents) { + LauncherAtom.ItemInfo atomInfo = info.buildProto(fInfo); + writeSnapshot(atomInfo, mInstanceId); + } + } catch (Exception e) { } } for (ItemInfo info : appWidgets) { LauncherAtom.ItemInfo atomInfo = info.buildProto(null);