diff options
| author | 2022-10-04 18:50:59 +0000 | |
|---|---|---|
| committer | 2022-10-04 18:50:59 +0000 | |
| commit | c12a68577a105e3a33640ae4f301d76cc0d59ccd (patch) | |
| tree | 350cf245f7e286340ab3f2da86cb553a35ac647d | |
| parent | 608a6a99596a3044ef39ef1d91dfb3c9081c0c25 (diff) | |
| parent | 9bce00406b0ffe48abfef87cac8bad31220504ab (diff) | |
Merge "Ignore malformed shortcuts" into tm-dev am: 9bce00406b
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20026353
Change-Id: Ic035b2b54d4c164f572efcfe2d96f9214d89a3cf
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
| -rw-r--r-- | services/core/java/com/android/server/pm/ShortcutPackage.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/services/core/java/com/android/server/pm/ShortcutPackage.java b/services/core/java/com/android/server/pm/ShortcutPackage.java index 0c601bfde05a..890c89152a7c 100644 --- a/services/core/java/com/android/server/pm/ShortcutPackage.java +++ b/services/core/java/com/android/server/pm/ShortcutPackage.java @@ -1962,10 +1962,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)); |