Merge "speech: Fix RemoteSpeechReco race condition" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
ede93e7710
@@ -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));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user