Merge "fix SoundTrigger overwriting session identity"

This commit is contained in:
Nicholas Ambur
2020-11-17 07:20:11 +00:00
committed by Android (Google) Code Review
3 changed files with 4 additions and 24 deletions

View File

@@ -47,12 +47,7 @@ public interface SoundTriggerInternal {
int STATUS_ERROR = SoundTrigger.STATUS_ERROR;
int STATUS_OK = SoundTrigger.STATUS_OK;
Session attachAsOriginator(@NonNull Identity originatorIdentity,
@NonNull IBinder client);
Session attachAsMiddleman(@NonNull Identity middlemanIdentity,
@NonNull Identity originatorIdentity,
@NonNull IBinder client);
Session attach(@NonNull IBinder client);
/**
* Dumps service-wide information.

View File

@@ -1545,22 +1545,8 @@ public class SoundTriggerService extends SystemService {
}
@Override
public Session attachAsOriginator(@NonNull Identity originatorIdentity,
@NonNull IBinder client) {
try (SafeCloseable ignored = PermissionUtil.establishIdentityDirect(
originatorIdentity)) {
return new SessionImpl(newSoundTriggerHelper(), client);
}
}
@Override
public Session attachAsMiddleman(@NonNull Identity middlemanIdentity,
@NonNull Identity originatorIdentity,
@NonNull IBinder client) {
try (SafeCloseable ignored = PermissionUtil.establishIdentityIndirect(mContext,
SOUNDTRIGGER_DELEGATE_IDENTITY, middlemanIdentity, originatorIdentity)) {
return new SessionImpl(newSoundTriggerHelper(), client);
}
public Session attach(@NonNull IBinder client) {
return new SessionImpl(newSoundTriggerHelper(), client);
}
@Override

View File

@@ -262,8 +262,7 @@ public class VoiceInteractionManagerService extends SystemService {
try (SafeCloseable ignored = PermissionUtil.establishIdentityDirect(
originatorIdentity)) {
SoundTriggerSession session = new SoundTriggerSession(
mSoundTriggerInternal.attachAsOriginator(IdentityContext.getNonNull(),
client));
mSoundTriggerInternal.attach(client));
synchronized (mSessions) {
mSessions.add(new WeakReference<>(session));
}