From e2551bcecb9e8312dc7b66ac95865a5296f66cf4 Mon Sep 17 00:00:00 2001 From: Varun Shah Date: Tue, 16 May 2023 01:39:06 +0000 Subject: [PATCH] Ensure valid parameters for CHOOSER_ACTION events. Bug: 253403242 Test: atest UsageStatsTest Change-Id: Id356794f8fdfe077ae223c83a4df9b9185e497b3 --- .../java/com/android/server/usage/UsageStatsService.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/services/usage/java/com/android/server/usage/UsageStatsService.java b/services/usage/java/com/android/server/usage/UsageStatsService.java index 72f2c1ddfc771..cf236ddb100dd 100644 --- a/services/usage/java/com/android/server/usage/UsageStatsService.java +++ b/services/usage/java/com/android/server/usage/UsageStatsService.java @@ -2540,10 +2540,15 @@ public class UsageStatsService extends SystemService implements @Override public void reportChooserSelection(@NonNull String packageName, int userId, - String contentType, String[] annotations, String action) { + @NonNull String contentType, String[] annotations, @NonNull String action) { if (packageName == null) { throw new IllegalArgumentException("Package selection must not be null."); } + // A valid contentType and action must be provided for chooser selection events. + if (contentType == null || contentType.isBlank() + || action == null || action.isBlank()) { + return; + } // 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");