Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use homogeneous dictionaries whenever possible.
[simgrid.git] / src / gras / DataDesc / ddt_exchange.c
index 60b1943..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,7 +395,7 @@ 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 {
@@ -525,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 */ );
       }
 
@@ -638,7 +638,7 @@ 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 {
@@ -976,7 +976,7 @@ 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");