- simgrid::simix::kernelImmediate([execution] {
- XBT_DEBUG("Cancel synchro %p", execution.get());
- simgrid::kernel::activity::ExecImplPtr exec =
- boost::static_pointer_cast<simgrid::kernel::activity::ExecImpl>(execution);
-
- if (exec->surf_exec)
- exec->surf_exec->cancel();
+ simgrid::kernel::activity::ExecImplPtr exec =
+ boost::static_pointer_cast<simgrid::kernel::activity::ExecImpl>(execution);
+ if (not exec->surfAction_)
+ return;
+ simgrid::simix::kernelImmediate([exec] {
+ XBT_DEBUG("Cancel synchro %p", exec.get());
+ if (exec->surfAction_)
+ exec->surfAction_->cancel();