Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use homogeneous dictionaries whenever possible.
[simgrid.git] / src / gras / DataDesc / ddt_exchange.c
index 5834d34..91da76f 100644 (file)
@@ -98,7 +98,7 @@ static XBT_INLINE void gras_dd_alloc_ref(xbt_dict_t refs, long int size, char **
            *(void **) r_ref);
 
     if (detect_cycle)
-      xbt_dict_set_ext(refs, (const char *) r_ref, r_len, ptr, xbt_free_f);
+      xbt_dict_set_ext(refs, (const char *) r_ref, r_len, ptr, NULL);
   }
 }
 
@@ -235,7 +235,7 @@ gras_datadesc_memcpy_rec(gras_cbps_t state,
       /* Detect the referenced type */
       sub_type = ref_data.type;
       if (sub_type == NULL) {
-        sub_type = (*ref_data.selector) (type, state, src);
+        sub_type = ref_data.selector(type, state, src);
       }
 
       /* Send the pointed data only if not already sent */
@@ -395,14 +395,15 @@ int gras_datadesc_memcpy(gras_datadesc_type_t type, void *src, void *dst)
          dst);
   if (!state) {
     state = gras_cbps_new();
-    refs = xbt_dict_new();
+    refs = xbt_dict_new_homogeneous(xbt_free_f);
   }
 
   TRY {
     size =
         gras_datadesc_memcpy_rec(state, refs, type, (char *) src,
                                  (char *) dst, 0, type->cycle);
-  } TRY_CLEANUP {
+  }
+  TRY_CLEANUP {
     xbt_dict_reset(refs);
     gras_cbps_reset(state);
   }
@@ -524,7 +525,7 @@ gras_datadesc_send_rec(gras_socket_t sock,
       /* Detect the referenced type and send it to peer if needed */
       sub_type = ref_data.type;
       if (sub_type == NULL) {
-        sub_type = (*ref_data.selector) (type, state, data);
+        sub_type = ref_data.selector(type, state, data);
         gras_dd_send_int(sock, &(sub_type->code), 1 /*stable */ );
       }
 
@@ -637,13 +638,14 @@ void gras_datadesc_send(gras_socket_t sock,
 
   if (!state) {
     state = gras_cbps_new();
-    refs = xbt_dict_new();
+    refs = xbt_dict_new_homogeneous(NULL);
   }
 
   TRY {
     gras_datadesc_send_rec(sock, state, refs, type, (char *) src,
                            type->cycle);
-  } TRY_CLEANUP {
+  }
+  TRY_CLEANUP {
     xbt_dict_reset(refs);
     gras_cbps_reset(state);
   }
@@ -974,14 +976,15 @@ gras_datadesc_recv(gras_socket_t sock,
 
   if (!state) {
     state = gras_cbps_new();
-    refs = xbt_dict_new();
+    refs = xbt_dict_new_homogeneous(xbt_free_f);
   }
 
   xbt_assert(type, "called with NULL type descriptor");
   TRY {
     gras_datadesc_recv_rec(sock, state, refs, type,
                            r_arch, NULL, 0, (char *) dst, -1, type->cycle);
-  } TRY_CLEANUP {
+  }
+  TRY_CLEANUP {
     xbt_dict_reset(refs);
     gras_cbps_reset(state);
   }