Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add a new function xbt_dynar_to_array that transforms a dynar into a
[simgrid.git] / src / xbt / dynar.c
index 1065cc5..c84b2ee 100644 (file)
@@ -748,6 +748,19 @@ XBT_INLINE void xbt_dynar_sort(xbt_dynar_t dynar,
   _dynar_unlock(dynar);
 }
 
   _dynar_unlock(dynar);
 }
 
+/** @brief Transform a dynar into a NULL terminated array
+ *
+ * \param dynar the dynar to transform
+ */
+XBT_INLINE void * xbt_dynar_to_array (xbt_dynar_t dynar)
+{
+       void * last = xbt_new0(char,dynar->elmsize);
+       xbt_dynar_push(dynar, last);
+       free(last);
+       dynar->used--;
+       return dynar->data;
+}
+
 /*
  * Return 0 if d1 and d2 are equal and 1 if not equal
  */
 /*
  * Return 0 if d1 and d2 are equal and 1 if not equal
  */