From 58b799a7251c8c7719df8a9ae0906505fd09e444 Mon Sep 17 00:00:00 2001 From: Utkarsh Nigam Date: Thu, 12 Sep 2024 19:08:23 +0000 Subject: Return early when the caller doesn't have any permission. We don't need to query app search db if caller doesn't have any permission. Change-Id: I92eeca29b1b5d44592001434eb252a4b884ea7bc Flag: android.app.appfunctions.flags.enable_app_function_manager Test: Verified by running locally. Will add CTS in next cl. Bug: 360864791 --- .../java/com/android/server/appfunctions/CallerValidatorImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/services/appfunctions/java/com/android/server/appfunctions/CallerValidatorImpl.java b/services/appfunctions/java/com/android/server/appfunctions/CallerValidatorImpl.java index c4ccdd89ffae..94a63b43dd17 100644 --- a/services/appfunctions/java/com/android/server/appfunctions/CallerValidatorImpl.java +++ b/services/appfunctions/java/com/android/server/appfunctions/CallerValidatorImpl.java @@ -112,6 +112,10 @@ class CallerValidatorImpl implements CallerValidator { mContext.checkPermission(Manifest.permission.EXECUTE_APP_FUNCTIONS, pid, uid) == PackageManager.PERMISSION_GRANTED; + if (!hasExecutionPermission) { + return AndroidFuture.completedFuture(false); + } + final long token = Binder.clearCallingIdentity(); try { FutureAppSearchSession futureAppSearchSession = -- cgit v1.2.3-59-g8ed1b