Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba9ef306 authored by Atneya Nair's avatar Atneya Nair Committed by Automerger Merge Worker
Browse files

Merge "Fix potential NPE in STHelper" into udc-dev am: c27813eb am: 06f8eae0

parents 652c680c 06f8eae0
Loading
Loading
Loading
Loading
+12 −13
Original line number Diff line number Diff line
@@ -789,15 +789,15 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener {
            return;
        }
        ModelData model = getModelDataForLocked(event.soundModelHandle);
        if (!Objects.equals(event.getToken(), model.getToken())) {
            // Stale event, do nothing
            return;
        }
        if (model == null || !model.isGenericModel()) {
            Slog.w(TAG, "Generic recognition event: Model does not exist for handle: "
                    + event.soundModelHandle);
            return;
        }
        if (!Objects.equals(event.getToken(), model.getToken())) {
            // Stale event, do nothing
            return;
        }

        IRecognitionStatusCallback callback = model.getCallback();
        if (callback == null) {
@@ -875,11 +875,11 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener {
        Slog.w(TAG, "Recognition aborted");
        MetricsLogger.count(mContext, "sth_recognition_aborted", 1);
        ModelData modelData = getModelDataForLocked(event.soundModelHandle);
        if (modelData != null && modelData.isModelStarted()) {
            if (!Objects.equals(event.getToken(), modelData.getToken())) {
                // Stale event, do nothing
                return;
            }
        if (modelData != null && modelData.isModelStarted()) {
            modelData.setStopped();
            try {
                IRecognitionStatusCallback callback = modelData.getCallback();
@@ -916,16 +916,15 @@ public class SoundTriggerHelper implements SoundTrigger.StatusListener {
        MetricsLogger.count(mContext, "sth_keyphrase_recognition_event", 1);
        int keyphraseId = getKeyphraseIdFromEvent(event);
        ModelData modelData = getKeyphraseModelDataLocked(keyphraseId);
        if (!Objects.equals(event.getToken(), modelData.getToken())) {
            // Stale event, do nothing
            return;
        }

        if (modelData == null || !modelData.isKeyphraseModel()) {
            Slog.e(TAG, "Keyphase model data does not exist for ID:" + keyphraseId);
            return;
        }

        if (!Objects.equals(event.getToken(), modelData.getToken())) {
            // Stale event, do nothing
            return;
        }
        if (modelData.getCallback() == null) {
            Slog.w(TAG, "Received onRecognition event without callback for keyphrase model.");
            return;