Don't crash onServiceDisconnected...

...if destroy() hasn't already been called through some
other codepath.

Bug: 65249720
Test: runtest -x core/tests/coretests/src/com/android/internal/app/ChooserActivityTest.java
Change-Id: I5f90548e437986d8585390578f4ceecd57cc3473
This commit is contained in:
Dan Sandler
2017-09-25 17:40:04 -04:00
parent 8617e4ec9e
commit fcd7fae5e6

View File

@@ -1580,8 +1580,8 @@ public class ChooserActivity extends ResolverActivity {
} catch (RemoteException e) {
Log.e(TAG, "Querying ChooserTargetService " + name + " failed.", e);
mChooserActivity.unbindService(this);
destroy();
mChooserActivity.mServiceConnections.remove(this);
destroy();
}
}
}
@@ -1597,7 +1597,6 @@ public class ChooserActivity extends ResolverActivity {
}
mChooserActivity.unbindService(this);
destroy();
mChooserActivity.mServiceConnections.remove(this);
if (mChooserActivity.mServiceConnections.isEmpty()) {
mChooserActivity.mChooserHandler.removeMessages(
@@ -1605,6 +1604,7 @@ public class ChooserActivity extends ResolverActivity {
mChooserActivity.sendVoiceChoicesIfNeeded();
}
mConnectedComponent = null;
destroy();
}
}