diff options
author | 2024-09-12 19:08:23 +0000 | |
---|---|---|
committer | 2024-09-12 22:41:34 +0000 | |
commit | 58b799a7251c8c7719df8a9ae0906505fd09e444 (patch) | |
tree | 305997767bf3fa00c8c218589d907c5009bc7605 /services/appfunctions/java | |
parent | ad216bac194362d56631dc8e20c8236996516b09 (diff) |
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
Diffstat (limited to 'services/appfunctions/java')
-rw-r--r-- | services/appfunctions/java/com/android/server/appfunctions/CallerValidatorImpl.java | 4 |
1 files changed, 4 insertions, 0 deletions
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 = |