- default:
- THROW_IMPOSSIBLE;
- break;
- }
- if (simcall->issuer->host->isOff()) {
- simcall->issuer->context->iwannadie = 1;
- }
- simcall_process_sleep__set__result(simcall, result);
- 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;
- simcall_HANDLER_process_suspend(simcall, simcall->issuer);
+ simcall->issuer_->waiting_synchro_ = nullptr;
+ if (simcall->issuer_->is_suspended()) {
+ XBT_DEBUG("Wait! This actor is suspended and can't wake up now.");
+ simcall->issuer_->suspended_ = false;
+ simcall->issuer_->suspend();