diff --git a/nest/rt-table.c b/nest/rt-table.c
index 06ee1d3d6..b80365dfd 100644
--- a/nest/rt-table.c
+++ b/nest/rt-table.c
@@ -186,6 +186,7 @@ rte_update(net *net, struct proto *p, rte *new)
 		      *k = r->next;
 		      break;
 		    }
+		  k = &r->next;
 		}
 	      r->next = net->routes;
 	      net->routes = r;