Merge "fix SoundTrigger overwriting session identity"
This commit is contained in:
committed by
Android (Google) Code Review
commit
6cdbca617e
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user