summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYtai Ben-Tsvi <ytai@google.com>2020-01-14 16:54:01 -0800
committerYtai Ben-Tsvi <ytai@google.com>2020-01-14 16:54:15 -0800
commit8672d25e8a20cf7716eb6126279fa5d1572231a2 (patch)
treed9685b661046535baf1845b25bfa5137543b44b7
parentae479e550d52023c5d30da0995d7bc8dafa8111a (diff)
Correctly set the recognition state in response to GET_STATE
A forced recognition does not stop recognition. SoundTriggerHelper had a bug where it assumed that it does, and so future interactions would assume the wrong state and would eventually erroneously use the underlying layers. Bug: 147568295 Change-Id: I5ae69a8b292fda6aadc6011c4bf5cbc4d263a1ca
-rw-r--r--services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java
index bde2cfd52c0f..7099c0935ee9 100644
--- a/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java
+++ b/services/voiceinteraction/java/com/android/server/soundtrigger/SoundTriggerHelper.java
@@ -756,7 +756,9 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener {
return;
}
- model.setStopped();
+ if (event.status != SoundTrigger.RECOGNITION_STATUS_GET_STATE_RESPONSE) {
+ model.setStopped();
+ }
try {
callback.onGenericSoundTriggerDetected((GenericRecognitionEvent) event);
@@ -900,7 +902,9 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener {
return;
}
- modelData.setStopped();
+ if (event.status != SoundTrigger.RECOGNITION_STATUS_GET_STATE_RESPONSE) {
+ modelData.setStopped();
+ }
try {
modelData.getCallback().onKeyphraseDetected((KeyphraseRecognitionEvent) event);