X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/09a0b55d933dfe1b6c5e77c6e6b55be1b4e6da66..37f79c31cbc78af908f87b9e3cc15223b5a450ac:/src/simix/SynchroSleep.cpp diff --git a/src/simix/SynchroSleep.cpp b/src/simix/SynchroSleep.cpp index 853dd316da..febf52d4a3 100644 --- a/src/simix/SynchroSleep.cpp +++ b/src/simix/SynchroSleep.cpp @@ -22,11 +22,11 @@ void simgrid::simix::Sleep::resume() void simgrid::simix::Sleep::post() { - smx_simcall_t simcall; - e_smx_state_t state; - - while ((simcall = (smx_simcall_t) xbt_fifo_shift(simcalls))) { + while (!simcalls.empty()) { + smx_simcall_t simcall = simcalls.front(); + simcalls.pop_front(); + e_smx_state_t state; switch (surf_sleep->getState()){ case simgrid::surf::Action::State::failed: simcall->issuer->context->iwannadie = 1; @@ -46,7 +46,7 @@ void simgrid::simix::Sleep::post() simcall->issuer->context->iwannadie = 1; } simcall_process_sleep__set__result(simcall, state); - simcall->issuer->waiting_synchro = NULL; + simcall->issuer->waiting_synchro = nullptr; if (simcall->issuer->suspended) { XBT_DEBUG("Wait! This process is suspended and can't wake up now."); simcall->issuer->suspended = 0;