Fix wifi connectivity issues.

http://ag/480881 changed RouteInfo.getDestination() to return an IpPrefix
instead of a LinkAddress. This makes the equals() comparison always fail.

So, when ConnectivityService.updateRoutes() is given identical routes, instead
of realizing that there's no diff, it would consider them different, and thus
add and remove the same route. The add would fail, since the route already
existed in netd, but the remove would succeed, leaving the system with no routes
and thus no connectivity.

Bug: 15564210
Change-Id: I2003b0fcb809cc20837dc489c58af37891ca4556
This commit is contained in:
Sreeram Ramachandran
2014-06-11 15:56:51 -07:00
parent 15610080b1
commit 96151d642e

View File

@@ -361,7 +361,7 @@ public class RouteInfo implements Parcelable {
RouteInfo target = (RouteInfo) obj; RouteInfo target = (RouteInfo) obj;
return Objects.equals(mDestination, target.getDestination()) && return Objects.equals(mDestination, target.getDestinationLinkAddress()) &&
Objects.equals(mGateway, target.getGateway()) && Objects.equals(mGateway, target.getGateway()) &&
Objects.equals(mInterface, target.getInterface()); Objects.equals(mInterface, target.getInterface());
} }