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

Commit bd16d095 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "speech: Fix RemoteSpeechReco race condition" into sc-dev am: ede93e77 am: f73725e3

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15260390

Change-Id: Id5c81e8b6ac3195d2364a837715e6fadf885df81
parents 650e7a13 f73725e3
Loading
Loading
Loading
Loading
+6 −2
Original line number Original line Diff line number Diff line
@@ -125,10 +125,12 @@ final class RemoteSpeechRecognitionService extends ServiceConnector.Impl<IRecogn
                }
                }
            });
            });


            // Eager local evaluation to avoid reading a different or null value at closure-run-time
            final DelegatingListener listenerToStart = this.mDelegatingListener;
            run(service ->
            run(service ->
                    service.startListening(
                    service.startListening(
                            recognizerIntent,
                            recognizerIntent,
                            mDelegatingListener,
                            listenerToStart,
                            attributionSource));
                            attributionSource));
        }
        }
    }
    }
@@ -162,7 +164,9 @@ final class RemoteSpeechRecognitionService extends ServiceConnector.Impl<IRecogn
            }
            }
            mRecordingInProgress = false;
            mRecordingInProgress = false;


            run(service -> service.stopListening(mDelegatingListener));
            // Eager local evaluation to avoid reading a different or null value at closure-run-time
            final DelegatingListener listenerToStop = this.mDelegatingListener;
            run(service -> service.stopListening(listenerToStop));
        }
        }
    }
    }