Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Remove extern "C" from cpp files.
[simgrid.git] / src / simix / popping.cpp
index 6210e32..daeacbd 100644 (file)
@@ -3,10 +3,10 @@
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
 
-#include "smx_private.h"
+#include "smx_private.hpp"
 #include "xbt/xbt_os_thread.h"
 #if SIMGRID_HAVE_MC
-#include "src/mc/mc_private.h"
+#include "src/mc/mc_private.hpp"
 #endif
 
 #include "src/kernel/activity/CommImpl.hpp"
@@ -34,9 +34,10 @@ void SIMIX_simcall_answer(smx_simcall_t simcall)
   }
 }
 
-void SIMIX_simcall_exit(smx_activity_t synchro)
+void SIMIX_simcall_exit(smx_activity_t activity)
 {
-  synchro->post();
+  if (activity != nullptr) // When migrating, the surf activity is disconnected from its simix activity before cancel
+    activity->post();
 }
 
 void SIMIX_run_kernel(std::function<void()> const* code)