Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Rewrite xbt libs, using xbt dicts.
[simgrid.git] / src / xbt / xbt_sg_synchro.c
index 6e9b0ae..f95d16a 100644 (file)
@@ -39,7 +39,7 @@ static int xbt_thread_create_wrapper(int argc, char *argv[])
   xbt_thread_t t =
       (xbt_thread_t) SIMIX_process_self_get_data();
   SIMIX_req_process_set_data(SIMIX_process_self(), t->father_data);
-  (*t->code) (t->userparam);
+  t->code(t->userparam);
   if (t->joinable) {
     t->done = 1;
     xbt_mutex_acquire(t->mutex);
@@ -63,10 +63,10 @@ xbt_thread_t xbt_thread_create(const char *name, void_f_pvoid_t code,
   res->code = code;
   res->father_data = SIMIX_process_self_get_data();
   /*   char*name = bprintf("%s#%p",SIMIX_process_self_get_name(), param); */
-  res->s_process = SIMIX_req_process_create(name,
-                                            xbt_thread_create_wrapper, res,
-                                            SIMIX_host_self_get_name(), 0, NULL,
-                                            /*props */ NULL);
+  SIMIX_req_process_create(&res->s_process, name,
+                           xbt_thread_create_wrapper, res,
+                           SIMIX_host_self_get_name(), 0, NULL,
+                           /*props */ NULL);
   res->joinable = joinable;
   res->done = 0;
   res->cond = xbt_cond_init();
@@ -90,7 +90,7 @@ const char *xbt_thread_self_name(void)
 void xbt_thread_join(xbt_thread_t thread)
 {
   xbt_mutex_acquire(thread->mutex);
-  xbt_assert1(thread->joinable,
+  xbt_assert(thread->joinable,
               "Cannot join on %p: wasn't created joinable", thread);
   if (!thread->done) {
     xbt_cond_wait(thread->cond, thread->mutex);