am c5fc6231: am 2d6b52bd: Merge "Fix memory leak in ApnSettings-activity"

* commit 'c5fc6231312b21efb601367bae28d63f9b26ac52':
  Fix memory leak in ApnSettings-activity
This commit is contained in:
Wink Saville
2012-08-28 12:18:57 -07:00
committed by Android Git Automerger

View File

@@ -81,6 +81,7 @@ public class ApnSettings extends PreferenceActivity implements
private RestoreApnUiHandler mRestoreApnUiHandler;
private RestoreApnProcessHandler mRestoreApnProcessHandler;
private HandlerThread mRestoreDefaultApnThread;
private String mSelectedKey;
@@ -145,6 +146,15 @@ public class ApnSettings extends PreferenceActivity implements
unregisterReceiver(mMobileStateReceiver);
}
@Override
protected void onDestroy() {
super.onDestroy();
if (mRestoreDefaultApnThread != null) {
mRestoreDefaultApnThread.quit();
}
}
private void fillList() {
String where = "numeric=\""
+ android.os.SystemProperties.get(TelephonyProperties.PROPERTY_ICC_OPERATOR_NUMERIC, "")
@@ -273,12 +283,13 @@ public class ApnSettings extends PreferenceActivity implements
mRestoreApnUiHandler = new RestoreApnUiHandler();
}
if (mRestoreApnProcessHandler == null) {
HandlerThread restoreDefaultApnThread = new HandlerThread(
if (mRestoreApnProcessHandler == null ||
mRestoreDefaultApnThread == null) {
mRestoreDefaultApnThread = new HandlerThread(
"Restore default APN Handler: Process Thread");
restoreDefaultApnThread.start();
mRestoreDefaultApnThread.start();
mRestoreApnProcessHandler = new RestoreApnProcessHandler(
restoreDefaultApnThread.getLooper(), mRestoreApnUiHandler);
mRestoreDefaultApnThread.getLooper(), mRestoreApnUiHandler);
}
mRestoreApnProcessHandler