Setting the synth busy flag inside a synchronized block for
thread safety.
diff --git a/packages/TtsService/src/android/tts/TtsService.java b/packages/TtsService/src/android/tts/TtsService.java
index bca736a2e..c0e4cc0 100755
--- a/packages/TtsService/src/android/tts/TtsService.java
+++ b/packages/TtsService/src/android/tts/TtsService.java
@@ -824,11 +824,15 @@
try {
synthAvailable = synthesizerLock.tryLock();
if (!synthAvailable) {
- mSynthBusy = true;
+ synchronized (this) {
+ mSynthBusy = true;
+ }
Thread.sleep(100);
Thread synth = (new Thread(new SynthThread()));
synth.start();
- mSynthBusy = false;
+ synchronized (this) {
+ mSynthBusy = false;
+ }
return;
}
String language = "";