diff options
author | Nitin Arora <niarora@codeaurora.org> | 2015-08-11 12:17:07 -0700 |
---|---|---|
committer | Linux Build Service Account <lnxbuild@localhost> | 2015-10-06 03:25:45 -0600 |
commit | 4d47387480d5c0a2f883fb7fbbd930cbf341a749 (patch) | |
tree | 024e3379990d33646298cf46c13d2992ec18bbd3 | |
parent | ae17ae4f9ecb28a693afd882d619663a77f68663 (diff) | |
download | android_packages_apps_Bluetooth-4d47387480d5c0a2f883fb7fbbd930cbf341a749.tar.gz android_packages_apps_Bluetooth-4d47387480d5c0a2f883fb7fbbd930cbf341a749.tar.bz2 android_packages_apps_Bluetooth-4d47387480d5c0a2f883fb7fbbd930cbf341a749.zip |
Prevent profile service notification from getting masked
This patch involves early assignment of the static self reference
of AdapterService class, to be used by ProfileServices. This change
also helps late assignment of the AdapterService reference in
the ProfileService object. This change is needed for an SSR scenario
where the service restart happens even before the ManagerService
restarts the service
Change-Id: I826d362d7c866971eab7e7f442102e56dd685908
-rw-r--r-- | src/com/android/bluetooth/btservice/AdapterService.java | 4 | ||||
-rwxr-xr-x | src/com/android/bluetooth/btservice/ProfileService.java | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/com/android/bluetooth/btservice/AdapterService.java b/src/com/android/bluetooth/btservice/AdapterService.java index 6004b3dda..2f33522b7 100644 --- a/src/com/android/bluetooth/btservice/AdapterService.java +++ b/src/com/android/bluetooth/btservice/AdapterService.java @@ -429,6 +429,7 @@ public class AdapterService extends Service { mSdpManager = SdpManager.init(this); registerReceiver(mAlarmBroadcastReceiver, new IntentFilter(ACTION_ALARM_WAKEUP)); + setAdapterService(this); @@ -467,9 +468,6 @@ public class AdapterService extends Service { mJniCallbacks.init(mBondStateMachine,mRemoteDevices); - //FIXME: Set static instance here??? - setAdapterService(this); - checkA2dpState(); //Start Gatt service diff --git a/src/com/android/bluetooth/btservice/ProfileService.java b/src/com/android/bluetooth/btservice/ProfileService.java index 0c021620d..c3802fb60 100755 --- a/src/com/android/bluetooth/btservice/ProfileService.java +++ b/src/com/android/bluetooth/btservice/ProfileService.java @@ -113,6 +113,8 @@ public abstract class ProfileService extends Service { public int onStartCommand(Intent intent, int flags, int startId) { if (DBG) log("onStartCommand()"); + if(mAdapterService == null) + mAdapterService = AdapterService.getAdapterService(); if (mStartError || mAdapter == null) { Log.w(mName, "Stopping profile service: device does not have BT"); doStop(intent); |