Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
properly split init/start for Exec activities
[simgrid.git] / src / simix / smx_host.cpp
index 7196bdc..df906bb 100644 (file)
@@ -38,9 +38,11 @@ simgrid::kernel::activity::ExecImplPtr SIMIX_execution_start(std::string name, s
   }
 
   simgrid::kernel::activity::ExecImplPtr exec = simgrid::kernel::activity::ExecImplPtr(
-      new simgrid::kernel::activity::ExecImpl(name, surf_action, /*timeout_detector*/ nullptr, host));
+      new simgrid::kernel::activity::ExecImpl(name, category, /*timeout_detector*/ nullptr, host));
+
+  exec->surf_action_ = surf_action;
+  exec->surf_action_->set_data(exec.get());
 
-  exec->set_category(category);
   XBT_DEBUG("Create execute synchro %p: %s", exec.get(), exec->name_.c_str());
   simgrid::kernel::activity::ExecImpl::on_creation(exec);
 
@@ -70,7 +72,9 @@ simgrid::kernel::activity::ExecImplPtr SIMIX_execution_parallel_start(std::strin
   }
 
   simgrid::kernel::activity::ExecImplPtr exec = simgrid::kernel::activity::ExecImplPtr(
-      new simgrid::kernel::activity::ExecImpl(name, surf_action, timeout_detector, nullptr));
+      new simgrid::kernel::activity::ExecImpl(name, "", timeout_detector, nullptr));
+  exec->surf_action_ = surf_action;
+  exec->surf_action_->set_data(exec.get());
 
   XBT_DEBUG("Create parallel execute synchro %p", exec.get());