Merge "Release the interface request when Ethernet tethering is stopped." into rvc-dev am: e8d1d95abd

Change-Id: Iae59f31cc46c4f94c633f3fde94434d0bf99510b
This commit is contained in:
TreeHugger Robot
2020-03-19 19:27:31 +00:00
committed by Automerger Merge Worker

View File

@@ -641,21 +641,21 @@ public class Tethering {
mEthernetIfaceRequest = em.requestTetheredInterface(mExecutor, mEthernetCallback); mEthernetIfaceRequest = em.requestTetheredInterface(mExecutor, mEthernetCallback);
} else { } else {
stopEthernetTetheringLocked(); stopEthernetTetheringLocked();
if (mEthernetCallback != null) {
mEthernetIfaceRequest.release();
mEthernetCallback = null;
mEthernetIfaceRequest = null;
}
} }
} }
return TETHER_ERROR_NO_ERROR; return TETHER_ERROR_NO_ERROR;
} }
private void stopEthernetTetheringLocked() { private void stopEthernetTetheringLocked() {
if (mConfiguredEthernetIface == null) return; if (mConfiguredEthernetIface != null) {
changeInterfaceState(mConfiguredEthernetIface, IpServer.STATE_AVAILABLE); stopTrackingInterfaceLocked(mConfiguredEthernetIface);
stopTrackingInterfaceLocked(mConfiguredEthernetIface); mConfiguredEthernetIface = null;
mConfiguredEthernetIface = null; }
if (mEthernetCallback != null) {
mEthernetIfaceRequest.release();
mEthernetCallback = null;
mEthernetIfaceRequest = null;
}
} }
private class EthernetCallback implements EthernetManager.TetheredInterfaceCallback { private class EthernetCallback implements EthernetManager.TetheredInterfaceCallback {