X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/def75190166f07cc72917cb15535b660aa976e7f..7aae92e42d677a34e260f2364ba5a33f4d1f6b32:/src/simix/smx_synchro.cpp diff --git a/src/simix/smx_synchro.cpp b/src/simix/smx_synchro.cpp index e7860fff32..5a4d449efb 100644 --- a/src/simix/smx_synchro.cpp +++ b/src/simix/smx_synchro.cpp @@ -189,7 +189,15 @@ void Mutex::unlock(smx_process_t issuer) void SIMIX_mutex_destroy(smx_mutex_t mutex) { - delete mutex; + if (mutex != nullptr) + intrusive_ptr_release(mutex); +} + +XBT_PUBLIC(smx_mutex_t) SIMIX_mutex_dup(smx_mutex_t mutex) +{ + if (mutex != nullptr) + intrusive_ptr_add_ref(mutex); + return mutex; } smx_mutex_t simcall_HANDLER_mutex_init(smx_simcall_t simcall)