diff options
| author | 2023-04-28 21:37:46 +0000 | |
|---|---|---|
| committer | 2023-04-28 21:37:46 +0000 | |
| commit | 4bde468c7234abcec70e77655136a4ba5aa87268 (patch) | |
| tree | 3f5b9d14861c7b76582eafb9c2a9f6f094e3f653 | |
| parent | 55712d9ded7711cb97d7ba699048b47ba2adcb6c (diff) | |
| parent | b0fc48e369d6c965a22bdf6a50f5dcc06391773b (diff) | |
Merge "Ensure only valid events are reported." into udc-dev
| -rw-r--r-- | services/usage/java/com/android/server/usage/UsageStatsService.java | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/services/usage/java/com/android/server/usage/UsageStatsService.java b/services/usage/java/com/android/server/usage/UsageStatsService.java index a98429ad4902..ef1359449b9b 100644 --- a/services/usage/java/com/android/server/usage/UsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UsageStatsService.java @@ -2539,10 +2539,20 @@ public class UsageStatsService extends SystemService implements } @Override - public void reportChooserSelection(String packageName, int userId, String contentType, - String[] annotations, String action) { + public void reportChooserSelection(@NonNull String packageName, int userId, + @NonNull String contentType, String[] annotations, @NonNull String action) { if (packageName == null) { - Slog.w(TAG, "Event report user selecting a null package"); + throw new IllegalArgumentException("Package selection must not be null."); + } + if (contentType == null) { + throw new IllegalArgumentException("Content type for selection must not be null."); + } + if (action == null) { + throw new IllegalArgumentException("Selection action must not be null."); + } + // Verify if this package exists before reporting an event for it. + if (mPackageManagerInternal.getPackageUid(packageName, 0, userId) < 0) { + Slog.w(TAG, "Event report user selecting an invalid package"); return; } |