[zebra] Fix pauls zebra_rib/rib_process commit mistakes, again.

2006-01-30 Paul Jakma <paul.jakma@sun.com>

	* zebra_rib.c: (rib_process) Fourth time lucky on this jinxed
	  commit, last commit had a hole that could allow connected
	  route selection to escape beyond the connected route logic.
	  This time I cross-checked with Gunnar first. ;)
diff --git a/zebra/ChangeLog b/zebra/ChangeLog
index 9f892c8..e707975 100644
--- a/zebra/ChangeLog
+++ b/zebra/ChangeLog
@@ -1,3 +1,10 @@
+2006-01-30 Paul Jakma <paul.jakma@sun.com>
+
+	* zebra_rib.c: (rib_process) Fourth time lucky on this jinxed
+	  commit, last commit had a hole that could allow connected
+	  route selection to escape beyond the connected route logic. 
+	  This time I cross-checked with Gunnar first. ;)
+
 2006-01-25 Gunnar Stigen <gunnar.stigen@axxessit.no>
 
 	* zebra_rib.c: (rib_process) Application of Gunnar's earlier
diff --git a/zebra/zebra_rib.c b/zebra/zebra_rib.c
index f377400..330bce7 100644
--- a/zebra/zebra_rib.c
+++ b/zebra/zebra_rib.c
@@ -932,14 +932,16 @@
        * - lower metric beats higher for equal distance
        * - last, hence oldest, route wins tie break.
        */
+      
+      /* Connected routes. Pick the last connected
+       * route of the set of lowest metric connected routes.
+       */
       if (rib->type == ZEBRA_ROUTE_CONNECT)
         {
-          if (select->type != ZEBRA_ROUTE_CONNECT 
+          if (select->type != ZEBRA_ROUTE_CONNECT
               || rib->metric <= select->metric)
-            {
-              select = rib;
-              continue;
-            }
+            select = rib;
+          continue;
         }
       else if (select->type == ZEBRA_ROUTE_CONNECT)
         continue;