diff options
Diffstat (limited to 'src/com/android/bluetooth/btservice/AdapterState.java')
-rw-r--r-- | src/com/android/bluetooth/btservice/AdapterState.java | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/src/com/android/bluetooth/btservice/AdapterState.java b/src/com/android/bluetooth/btservice/AdapterState.java index 1d5eff99f..585f5ae86 100644 --- a/src/com/android/bluetooth/btservice/AdapterState.java +++ b/src/com/android/bluetooth/btservice/AdapterState.java @@ -25,6 +25,7 @@ import android.util.Log; import com.android.internal.util.State; import com.android.internal.util.StateMachine; import android.os.SystemProperties; +import java.lang.RuntimeException; /** * This state machine handles Bluetooth Adapter State. @@ -375,15 +376,19 @@ final class AdapterState extends StateMachine { } void stateChangeCallback(int status) { - if (status == AbstractionLayer.BT_STATE_OFF) { - SystemProperties.set("bluetooth.isEnabled","false"); - sendMessage(DISABLED); - } else if (status == AbstractionLayer.BT_STATE_ON) { - // We should have got the property change for adapter and remote devices. - SystemProperties.set("bluetooth.isEnabled","true"); - sendMessage(ENABLED_READY); - } else { - errorLog("Incorrect status in stateChangeCallback"); + try { + if (status == AbstractionLayer.BT_STATE_OFF) { + SystemProperties.set("bluetooth.isEnabled","false"); + sendMessage(DISABLED); + } else if (status == AbstractionLayer.BT_STATE_ON) { + // We should have got the property change for adapter and remote devices. + SystemProperties.set("bluetooth.isEnabled","true"); + sendMessage(ENABLED_READY); + } else { + errorLog("Incorrect status in stateChangeCallback"); + } + } catch (RuntimeException e) { + Log.e(TAG,"Error setting system prop " + e); } } |