- xbt_os_thread_set_extra_data(context);
- int rv = swapcontext(&((smx_ctx_sysv_t)context)->old_uc, &((smx_ctx_sysv_t) context)->uc);
- xbt_os_thread_set_extra_data(NULL);
+ SIMIX_context_set_current((smx_context_t) context);
+ int rv;
+ rv = swapcontext(&((smx_ctx_sysv_t)context)->old_uc, &((smx_ctx_sysv_t) context)->uc);
+ SIMIX_context_set_current((smx_context_t) maestro_context);