Merge changes Ibf61fe8f,I127e1a2c into udc-dev

* changes:
  Remove RECORD_AUDIO requirement for ST listModules
  Prevent detached ST loggers from double cacheing
This commit is contained in:
Atneya Nair
2023-04-27 15:13:28 +00:00
committed by Android (Google) Code Review
2 changed files with 7 additions and 6 deletions

View File

@@ -296,7 +296,10 @@ public class SoundTriggerService extends SystemService {
// Helper to add session logger to the capacity limited detached list.
// If we are at capacity, remove the oldest, and retry
private void addDetachedSessionLogger(EventLogger logger) {
private void detachSessionLogger(EventLogger logger) {
if (!mSessionEventLoggers.remove(logger)) {
return;
}
// Attempt to push to the top of the queue
while (!mDetachedSessionEventLoggers.offerFirst(logger)) {
// Remove the oldest element, if one still exists
@@ -872,8 +875,7 @@ public class SoundTriggerService extends SystemService {
private void detach() {
mSoundTriggerHelper.detach();
mSessionEventLoggers.remove(mEventLogger);
addDetachedSessionLogger(mEventLogger);
detachSessionLogger(mEventLogger);
}
private void enforceCallingPermission(String permission) {
@@ -1659,8 +1661,7 @@ public class SoundTriggerService extends SystemService {
private void detachInternal() {
mEventLogger.enqueue(new SessionEvent(Type.DETACH, null));
mSessionEventLoggers.remove(mEventLogger);
addDetachedSessionLogger(mEventLogger);
detachSessionLogger(mEventLogger);
mSoundTriggerHelper.detach();
}
}

View File

@@ -78,7 +78,7 @@ public class SoundTriggerMiddlewarePermission implements ISoundTriggerMiddleware
public @NonNull
SoundTriggerModuleDescriptor[] listModules() {
Identity identity = getIdentity();
enforcePermissionsForPreflight(identity);
enforcePermissionForPreflight(mContext, identity, CAPTURE_AUDIO_HOTWORD);
return mDelegate.listModules();
}