This prevents QUEUE_FLUSH from working as intented since
there is a (blocking) setLanguage() call that waits for
the previous synthesis to complete before flushing the queue.
bug:
5288327
Change-Id: I00467f0ac1584863ae27bfc076b8413e29e5379b
currentEngine);
if (localeString != null) {
final String[] locale = TtsEngines.parseLocalePref(localeString);
+ final Locale newLocale = new Locale(locale[0], locale[1], locale[2]);
+ final Locale engineLocale = mTts.getLanguage();
- if (DBG) Log.d(TAG, "Loading language ahead of sample check : " + locale);
- mTts.setLanguage(new Locale(locale[0], locale[1], locale[2]));
+ if (!newLocale.equals(engineLocale)) {
+ if (DBG) Log.d(TAG, "Loading language ahead of sample check : " + locale);
+ mTts.setLanguage(newLocale);
+ }
}
}
}