Index: src/plugins/rt_topo/laa3_solve.c =================================================================== --- src/plugins/rt_topo/laa3_solve.c (revision 1462) +++ src/plugins/rt_topo/laa3_solve.c (revision 1463) @@ -354,19 +354,13 @@ rt_topo_2nets_t *tns = NETDATA_LAA(net); for(tn = tns->head; tn != NULL; tn = tn->next) { long idx; - via = tn->br.array[0].via; - if (via != NULL) { -printf("via end adjust1: %f;%f -> %f;%f\n", tn->x1, tn->y1, via->x, via->y); - tn->x1 = tn->br.array[0].x = via->x; - tn->y1 = tn->br.array[0].y = via->y; - } - idx = tn->br.used-1; - assert(idx >= 0); - via = tn->br.array[idx].via; - if (via != NULL) { + for(idx = 0; idx < tn->br.used; idx++) { + via = tn->br.array[idx].via; + if (via != NULL) { printf("via end adjust2: %f;%f -> %f;%f\n", tn->x2, tn->y2, via->x, via->y); - tn->x2 = tn->br.array[idx].x = via->x; - tn->y2 = tn->br.array[idx].y = via->y; + tn->x2 = tn->br.array[idx].x = via->x; + tn->y2 = tn->br.array[idx].y = via->y; + } } } }