/* do nothing, synchro done */
break;
case SIMIX_FAILED:
- SMX_EXCEPTION(simcall->issuer, io_error, 0, "IO failed");
+ simcall->issuer->exception_ =
+ std::make_exception_ptr(simgrid::StorageFailureException(XBT_THROW_POINT, "Storage failed"));
break;
case SIMIX_CANCELED:
- simcall->issuer->exception = std::make_exception_ptr(simgrid::CancelException(XBT_THROW_POINT, "I/O Canceled"));
+ simcall->issuer->exception_ =
+ std::make_exception_ptr(simgrid::CancelException(XBT_THROW_POINT, "I/O Canceled"));
break;
default:
xbt_die("Internal error in SIMIX_io_finish: unexpected synchro state %d", static_cast<int>(synchro->state_));
}
simcall->issuer->waiting_synchro = nullptr;
- if (simcall->issuer->host_->is_on())
+ if (simcall->issuer->get_host()->is_on())
SIMIX_simcall_answer(simcall);
else
simcall->issuer->context_->iwannadie = true;