diff options
| author | 2022-10-03 23:43:13 +0000 | |
|---|---|---|
| committer | 2022-10-03 23:43:13 +0000 | |
| commit | 10033535fca628f3a24224ed1418d97dceec1f49 (patch) | |
| tree | 66ce34eb0773fc08e9c1ba88fd2cd96eadc09606 | |
| parent | 725961fbbf3fad1207222b3dd68ff803e68528b9 (diff) | |
| parent | a8fe41afb0a89979386ffd17213eb7b5f1c3739d (diff) | |
[Do Not Merge] Ignore malformed shortcuts am: a8fe41afb0
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20015227
Change-Id: Iec12138fa01ed8ddb78a1d62307afd157d8060ca
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 | 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 9e27f65105eb..f2bfb2aa1405 100644 --- a/services/core/java/com/android/server/pm/ShortcutPackage.java +++ b/services/core/java/com/android/server/pm/ShortcutPackage.java @@ -1798,11 +1798,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)); |