summaryrefslogtreecommitdiffstats
path: root/jni/com_android_bluetooth_a2dp.cpp
diff options
context:
space:
mode:
authorKausik Sinnaswamy <kausik@broadcom.com>2012-03-21 15:14:32 +0530
committerAndroid (Google) Code Review <android-gerrit@google.com>2012-07-16 21:50:40 -0700
commit93f548ff8560bdecdc4bdd2f91f7dacda1e6bbc3 (patch)
treef009b5b83b93b111599445976b79378cbb7e81bf /jni/com_android_bluetooth_a2dp.cpp
parent345d21b0575a4b866bfc9ccfde9c654e7b859ac6 (diff)
downloadandroid_packages_apps_Bluetooth-93f548ff8560bdecdc4bdd2f91f7dacda1e6bbc3.tar.gz
android_packages_apps_Bluetooth-93f548ff8560bdecdc4bdd2f91f7dacda1e6bbc3.tar.bz2
android_packages_apps_Bluetooth-93f548ff8560bdecdc4bdd2f91f7dacda1e6bbc3.zip
Caching callbackEnv in HFP/A2DP JNI results in the ENV going out-of-syn after an disassociate_evt/associate_evt sequence. Removed the caching.
Change-Id: Iebe3d2b3fa632c3332be82291bf32ace62c30ad5
Diffstat (limited to 'jni/com_android_bluetooth_a2dp.cpp')
-rw-r--r--jni/com_android_bluetooth_a2dp.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/jni/com_android_bluetooth_a2dp.cpp b/jni/com_android_bluetooth_a2dp.cpp
index 0edf4b46a..ebc23a5a8 100644
--- a/jni/com_android_bluetooth_a2dp.cpp
+++ b/jni/com_android_bluetooth_a2dp.cpp
@@ -20,9 +20,13 @@ static jobject mCallbacksObj = NULL;
static JNIEnv *sCallbackEnv = NULL;
static bool checkCallbackThread() {
- if (sCallbackEnv == NULL) {
- sCallbackEnv = getCallbackEnv();
- }
+ // Always fetch the latest callbackEnv from AdapterService.
+ // Caching this could cause this sCallbackEnv to go out-of-sync
+ // with the AdapterService's ENV if an ASSOCIATE/DISASSOCIATE event
+ // is received
+ //if (sCallbackEnv == NULL) {
+ sCallbackEnv = getCallbackEnv();
+ //}
JNIEnv* env = AndroidRuntime::getJNIEnv();
if (sCallbackEnv != env || sCallbackEnv == NULL) return false;