OSDN Git Service

Bluetooth: Check for mPanService before changing tethering state
authorHemant Gupta <hemantg@codeaurora.org>
Sun, 15 Feb 2015 13:26:54 +0000 (18:56 +0530)
committerAndre Eisenbach <eisenbach@google.com>
Tue, 19 May 2015 17:07:19 +0000 (10:07 -0700)
Checking for mPanService before changing OR checking tethering state,
otherwise it will lead to application crash while checking isTetheringOn
OR changing tethering state.

Change-Id: I00844c03cdb8616118c1d50d7d31c75e51f0ef9b

core/java/android/bluetooth/BluetoothPan.java

index 4f81f98..eb6166a 100644 (file)
@@ -333,19 +333,25 @@ public final class BluetoothPan implements BluetoothProfile {
 
     public void setBluetoothTethering(boolean value) {
         if (DBG) log("setBluetoothTethering(" + value + ")");
-        try {
-            mPanService.setBluetoothTethering(value);
-        } catch (RemoteException e) {
-            Log.e(TAG, "Stack:" + Log.getStackTraceString(new Throwable()));
+
+        if (mPanService != null && isEnabled()) {
+            try {
+                mPanService.setBluetoothTethering(value);
+            } catch (RemoteException e) {
+                Log.e(TAG, "Stack:" + Log.getStackTraceString(new Throwable()));
+            }
         }
     }
 
     public boolean isTetheringOn() {
         if (VDBG) log("isTetheringOn()");
-        try {
-            return mPanService.isTetheringOn();
-        } catch (RemoteException e) {
-            Log.e(TAG, "Stack:" + Log.getStackTraceString(new Throwable()));
+
+        if (mPanService != null && isEnabled()) {
+            try {
+                return mPanService.isTetheringOn();
+            } catch (RemoteException e) {
+                Log.e(TAG, "Stack:" + Log.getStackTraceString(new Throwable()));
+            }
         }
         return false;
     }