diff options
| author | 2022-10-03 20:23:07 +0000 | |
|---|---|---|
| committer | 2022-10-03 20:23:07 +0000 | |
| commit | 8a2baf4e16bc751c2fd4ff0e8219e8ffa4aeaae9 (patch) | |
| tree | fab0a2061a67cffe3e9c1f973167cac7ce0be47e | |
| parent | 2663e8aa43c64368420cc04b03f813b7f0cfb7d2 (diff) | |
| parent | 9b0dd514d29bbf986f1d1a3c6cebc2ef2bcf782e (diff) | |
Merge "[Do Not Merge] Ignore malformed shortcuts" into qt-dev
| -rw-r--r-- | services/core/java/com/android/server/pm/ShortcutPackage.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/services/core/java/com/android/server/pm/ShortcutPackage.java b/services/core/java/com/android/server/pm/ShortcutPackage.java index 06c71baade42..c6bc7576147f 100644 --- a/services/core/java/com/android/server/pm/ShortcutPackage.java +++ b/services/core/java/com/android/server/pm/ShortcutPackage.java @@ -1629,11 +1629,15 @@ class ShortcutPackage extends ShortcutPackageItem { continue; case TAG_SHORTCUT: - final ShortcutInfo si = parseShortcut(parser, packageName, - shortcutUser.getUserId(), fromBackup); - - // Don't use addShortcut(), we don't need to save the icon. - ret.mShortcuts.put(si.getId(), si); + try { + final ShortcutInfo si = parseShortcut(parser, packageName, + shortcutUser.getUserId(), fromBackup); + // Don't use addShortcut(), we don't need to save the icon. + ret.mShortcuts.put(si.getId(), si); + } catch (Exception e) { + // b/246540168 malformed shortcuts should be ignored + Slog.e(TAG, "Failed parsing shortcut.", e); + } continue; case TAG_SHARE_TARGET: ret.mShareTargets.add(ShareTargetInfo.loadFromXml(parser)); |