Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use type network_element_t instead of void*, and avoid unnecessary casts.
[simgrid.git] / src / surf / surf_routing_dijkstra.c
index 764e845..8fc6756 100644 (file)
@@ -332,7 +332,7 @@ static void dijkstra_get_route_and_latency(AS_t asg,
   }
 
   /* compose route path with links */
-  network_element_t gw_src, gw_dst, prev_gw_src, first_gw;
+  network_element_t gw_src = NULL, gw_dst, prev_gw_src, first_gw = NULL;
   network_element_t gw_dst_net_elm = NULL, prev_gw_src_net_elm = NULL;
 
   for (v = dst_node_id; v != src_node_id; v = pred_arr[v]) {
@@ -474,10 +474,12 @@ void model_dijkstra_both_parse_route (AS_t asg, const char *src,
        as_dijkstra_t as = (as_dijkstra_t) asg;
     network_element_t src_net_elm, dst_net_elm;
 
-    src_net_elm = (network_element_t)xbt_lib_get_or_null(host_lib, src, ROUTING_HOST_LEVEL);
-    dst_net_elm = (network_element_t)xbt_lib_get_or_null(host_lib, dst, ROUTING_HOST_LEVEL);
-    if(!src_net_elm) src_net_elm = (network_element_t)xbt_lib_get_or_null(as_router_lib, src, ROUTING_ASR_LEVEL);
-    if(!dst_net_elm) dst_net_elm = (network_element_t)xbt_lib_get_or_null(as_router_lib, dst, ROUTING_ASR_LEVEL);
+    src_net_elm = xbt_lib_get_or_null(host_lib, src, ROUTING_HOST_LEVEL);
+    dst_net_elm = xbt_lib_get_or_null(host_lib, dst, ROUTING_HOST_LEVEL);
+    if (!src_net_elm)
+      src_net_elm = xbt_lib_get_or_null(as_router_lib, src, ROUTING_ASR_LEVEL);
+    if (!dst_net_elm)
+      dst_net_elm = xbt_lib_get_or_null(as_router_lib, dst, ROUTING_ASR_LEVEL);
 
     xbt_assert(src_net_elm, "Network elements %s not found", src);
     xbt_assert(dst_net_elm, "Network elements %s not found", dst);