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:
@@ -296,7 +296,10 @@ public class SoundTriggerService extends SystemService {
|
|||||||
|
|
||||||
// Helper to add session logger to the capacity limited detached list.
|
// Helper to add session logger to the capacity limited detached list.
|
||||||
// If we are at capacity, remove the oldest, and retry
|
// 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
|
// Attempt to push to the top of the queue
|
||||||
while (!mDetachedSessionEventLoggers.offerFirst(logger)) {
|
while (!mDetachedSessionEventLoggers.offerFirst(logger)) {
|
||||||
// Remove the oldest element, if one still exists
|
// Remove the oldest element, if one still exists
|
||||||
@@ -872,8 +875,7 @@ public class SoundTriggerService extends SystemService {
|
|||||||
|
|
||||||
private void detach() {
|
private void detach() {
|
||||||
mSoundTriggerHelper.detach();
|
mSoundTriggerHelper.detach();
|
||||||
mSessionEventLoggers.remove(mEventLogger);
|
detachSessionLogger(mEventLogger);
|
||||||
addDetachedSessionLogger(mEventLogger);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void enforceCallingPermission(String permission) {
|
private void enforceCallingPermission(String permission) {
|
||||||
@@ -1659,8 +1661,7 @@ public class SoundTriggerService extends SystemService {
|
|||||||
|
|
||||||
private void detachInternal() {
|
private void detachInternal() {
|
||||||
mEventLogger.enqueue(new SessionEvent(Type.DETACH, null));
|
mEventLogger.enqueue(new SessionEvent(Type.DETACH, null));
|
||||||
mSessionEventLoggers.remove(mEventLogger);
|
detachSessionLogger(mEventLogger);
|
||||||
addDetachedSessionLogger(mEventLogger);
|
|
||||||
mSoundTriggerHelper.detach();
|
mSoundTriggerHelper.detach();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ public class SoundTriggerMiddlewarePermission implements ISoundTriggerMiddleware
|
|||||||
public @NonNull
|
public @NonNull
|
||||||
SoundTriggerModuleDescriptor[] listModules() {
|
SoundTriggerModuleDescriptor[] listModules() {
|
||||||
Identity identity = getIdentity();
|
Identity identity = getIdentity();
|
||||||
enforcePermissionsForPreflight(identity);
|
enforcePermissionForPreflight(mContext, identity, CAPTURE_AUDIO_HOTWORD);
|
||||||
return mDelegate.listModules();
|
return mDelegate.listModules();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user