From 57c83bb4e69034efcfe45f19a8d44955f4921c3d Mon Sep 17 00:00:00 2001 From: Robert Greenwalt Date: Fri, 15 Jul 2011 09:45:08 -0700 Subject: [PATCH] Small fix to 5008973 fix. Removed redundent log. Cleaned some logic. Will try to modify route even if recursive operation had an error. bug: 5008973 Change-Id: Ie2ca51cc39cfac027a8a2e2eaddcb7d6c378c4da --- .../com/android/server/ConnectivityService.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/services/java/com/android/server/ConnectivityService.java b/services/java/com/android/server/ConnectivityService.java index edf1907088..cba2354326 100644 --- a/services/java/com/android/server/ConnectivityService.java +++ b/services/java/com/android/server/ConnectivityService.java @@ -966,12 +966,15 @@ public class ConnectivityService extends IConnectivityManager.Stub { if (r.isHostRoute() == false) { RouteInfo bestRoute = RouteInfo.selectBestRoute(lp.getRoutes(), r.getGateway()); if (bestRoute != null) { - if (bestRoute.getGateway().equals(r.getGateway()) == false) { - bestRoute = RouteInfo.makeHostRoute(r.getGateway(), bestRoute.getGateway()); - } else { + if (bestRoute.getGateway().equals(r.getGateway())) { + // if there is no better route, add the implied hostroute for our gateway bestRoute = RouteInfo.makeHostRoute(r.getGateway()); + } else { + // if we will connect to our gateway through another route, add a direct + // route to it's gateway + bestRoute = RouteInfo.makeHostRoute(r.getGateway(), bestRoute.getGateway()); } - if (!modifyRoute(ifaceName, lp, bestRoute, cycleCount+1, doAdd)) return false; + modifyRoute(ifaceName, lp, bestRoute, cycleCount+1, doAdd); } } if (doAdd) { @@ -1050,9 +1053,6 @@ public class ConnectivityService extends IConnectivityManager.Stub { public void setDataDependency(int networkType, boolean met) { enforceConnectivityInternalPermission(); - if (DBG) { - log("setDataDependency(" + networkType + ", " + met + ")"); - } mHandler.sendMessage(mHandler.obtainMessage(EVENT_SET_DEPENDENCY_MET, (met ? ENABLED : DISABLED), networkType)); }