diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2022-10-04 00:59:35 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2022-10-04 00:59:35 +0000 |
commit | e667a6bfe257c43fea345a9cb48ee1c86bbd36cc (patch) | |
tree | 30812707c1077525cb05badb8492c194a49fc1cd | |
parent | c03b0e2d7829aafb1af853aebdd591aa3777c2fc (diff) | |
parent | 36338a315218221e51c24a42e44c4f743d416f82 (diff) | |
download | base-e667a6bfe257c43fea345a9cb48ee1c86bbd36cc.tar.gz |
Merge "[Do Not Merge] Ignore malformed shortcuts" into sc-dev
-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 b4bd086af272..3506fd9be15d 100644 --- a/services/core/java/com/android/server/pm/ShortcutPackage.java +++ b/services/core/java/com/android/server/pm/ShortcutPackage.java @@ -1967,10 +1967,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)); |