Merge change 7419 from master that may help eliminate the problem.
This change was for a different use case (when disabling A2DP to switch output to SCO) but without a repro case it is worth trying.
* changes:
Close the search dialog before starting voice search in all cases, i.e., also when launching web search, not just when it's using the intent API.
* changes:
Fix bug 2025765. Talkback produced a null pointer exception when being enabled and disabled repeatedly due to a race condition between the onDestroy() of the service, and the use of the service itself. The error occurs when one Talkback thread initiates the destruction of the service (call to onDestroy()) when it invokes shutdown() on its TextToSpeech instance (the client of the service). At the same time, Talkback tries to say that "Accessibility" is unchecked from another thread. During onDestroy(), the reference to the TTS engine (sNativeSynth) is reset to null, which is used in the service in speakInternalOnly(), and setLanguage(). The fix consists in the addition of a static variable that signals that the service has entered onDestroy(). Once this flag is set, all method invocations on sNativeSynth will be dismissed. Note that access to the native resources used by sNativeSynth are synchronized at the native layer, therefore preventing sNativeSynth.shutdown() to interfere with a sNativeSynth.speak() call already underway.
* changes:
Name unknown albums after the folder they're in, similar to how songs with no title metadata are named after the file. Only files that are in the root of the card will still belong to the "Unknown Album"
* changes:
Fix#2025900. If a https request is canceled while openConnection is called and a ssl error happened, the http thread can be blocked for up to 10 min. Added code to detect this case and unlock the thread.
+ Add new error code CONNECTION_LOST to VpnManager.
+ Make VpnService call onError() instead of onDisconnect() when
connection is lost.
+ Make VpnService broadcast CONNECTION_LOST when that happens.
* changes:
check for null native objects, which never happens on a real subclass (we throw in that case) but can happen because we allow the callers to create the base class from java.
Also...
+ stop daemons before getting server IP;
+ remove setForeground();
+ add the DBG flag for Log.d calls.
PatchSet 3:
+ add CHALLENGE_ERROR and REMOTE_HUNG_UP to VpnManager
+ broadcast new error codes in VpnService
+ check local IP change instead of dns change
+ move removeStates() to VpnService.onFinalCleanUp()
PatchSet 7:
+ add encryption flag to PptpProfile
+ PptpService and MtpdHelper are revised accordingly
It turns out we were not returning the density for anything retrieved from a
TypedArray... which basically means any bitmap references from a layout or style...!!!
This is now fixed.
Also fiddle with the density compatibility mode to turn on smoothing in certain situations,
helping the look of things when they need to scale and we couldn't do the scaling at
load time.
* changes:
Special-case search within the browser to not show the app icon to the left of the search field. Also, because this removes context about whether you're in browser search or global search, we make sure to clear any entered text if you jump out to global search from within browser search.
* changes:
Fixing bug #2023024 - there is an out of bounds exception that can happen if services are going away as the AccessibilityManagerService is trying to dispatch notifications to these services. Catching this exception and bailing because having this exception means that there are no more services around that need to get this notification.
* changes:
Fix bug 2017664 Removed the TTS_ prefix in the TextToSpeech class to follow the standard naming convention. Moved the TTS-related intents from the Intent class to TextToSpeech and TextToSpeech.Engine. Renamed the TextToSpeech.Engine constants that are used as extras for the ACTION_TTS_CHECK_TTS_DATA intent to prefix them with EXTRA_. Cleaned up the other TextToSpeech.Engine constant to remove superfluous mentions of "TTS" in the name.