Invalidate recognition token if model is stopped
If recognition is not active after receiving an event, invalidate the
recognition token.
Bug: 236826280
Bug: 275080257
Test: SoundTriggerManagerTest#
testStartTriggerStopRecognitionRace_doesNotFail
Change-Id: I070e7daf5af3dff30491ec9c387b7452cb2b9642
This commit is contained in:
@@ -487,10 +487,11 @@ class SoundTriggerModule implements IBinder.DeathRecipient, ISoundTriggerHal.Glo
|
||||
if (mRecognitionToken == null) {
|
||||
return;
|
||||
}
|
||||
event.token = mRecognitionToken;
|
||||
if (!event.recognitionEvent.recognitionStillActive) {
|
||||
setState(ModelState.LOADED);
|
||||
mRecognitionToken = null;
|
||||
}
|
||||
event.token = mRecognitionToken;
|
||||
callback = mCallback;
|
||||
}
|
||||
// The callback must be invoked outside of the lock.
|
||||
@@ -512,10 +513,11 @@ class SoundTriggerModule implements IBinder.DeathRecipient, ISoundTriggerHal.Glo
|
||||
if (mRecognitionToken == null) {
|
||||
return;
|
||||
}
|
||||
event.token = mRecognitionToken;
|
||||
if (!event.phraseRecognitionEvent.common.recognitionStillActive) {
|
||||
setState(ModelState.LOADED);
|
||||
mRecognitionToken = null;
|
||||
}
|
||||
event.token = mRecognitionToken;
|
||||
callback = mCallback;
|
||||
}
|
||||
// The callback must be invoked outside of the lock.
|
||||
|
||||
Reference in New Issue
Block a user