Merge "Fix leak of DhcpServer on tethering stop error" am: 7e5a5a6983 am: 7afb36786c
am: fe1ad3d0b8
Change-Id: I11ca57c024b3bf8fc6788726e376ce6664798bcd
This commit is contained in:
@@ -433,6 +433,9 @@ public class IpServer extends StateMachine {
|
||||
}
|
||||
}
|
||||
ifcg.clearFlag("running");
|
||||
|
||||
// TODO: this may throw if the interface is already gone. Do proper handling and
|
||||
// simplify the DHCP server start/stop.
|
||||
mNMService.setInterfaceConfig(mIfaceName, ifcg);
|
||||
|
||||
if (!configureDhcp(enabled, (Inet4Address) addr, prefixLen)) {
|
||||
@@ -440,6 +443,14 @@ public class IpServer extends StateMachine {
|
||||
}
|
||||
} catch (Exception e) {
|
||||
mLog.e("Error configuring interface " + e);
|
||||
if (!enabled) {
|
||||
try {
|
||||
// Calling stopDhcp several times is fine
|
||||
stopDhcp();
|
||||
} catch (Exception dhcpError) {
|
||||
mLog.e("Error stopping DHCP", dhcpError);
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user