From 052ad24219bbb170d9d028a460741524a768915a Mon Sep 17 00:00:00 2001 From: Michael Chan Date: Mon, 14 Dec 2009 10:42:27 -0800 Subject: b/2323277 Fixed race condition where the user clicks on the dialog before dismiss() is processed. Change-Id: Iae98c45e4c1c5d36f33d6519ee2adba515f6b9aa --- src/com/android/settings/bluetooth/DockService.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/bluetooth/DockService.java b/src/com/android/settings/bluetooth/DockService.java index 484ce86..8e3af9d 100644 --- a/src/com/android/settings/bluetooth/DockService.java +++ b/src/com/android/settings/bluetooth/DockService.java @@ -331,7 +331,9 @@ public class DockService extends Service implements AlertDialog.OnMultiChoiceCli // Called when the "Remember" Checkbox is clicked public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (DEBUG) Log.d(TAG, "onCheckedChanged: Remember Settings = " + isChecked); - mBtManager.saveDockAutoConnectSetting(mDevice.getAddress(), isChecked); + if (mDevice != null) { + mBtManager.saveDockAutoConnectSetting(mDevice.getAddress(), isChecked); + } } // Called when the dialog is dismissed @@ -346,7 +348,7 @@ public class DockService extends Service implements AlertDialog.OnMultiChoiceCli // Called when clicked on the OK button public void onClick(DialogInterface dialog, int which) { - if (which == DialogInterface.BUTTON_POSITIVE) { + if (which == DialogInterface.BUTTON_POSITIVE && mDevice != null) { if (!mBtManager.hasDockAutoConnectSetting(mDevice.getAddress())) { mBtManager.saveDockAutoConnectSetting(mDevice.getAddress(), true); } -- cgit v1.1