Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Cosmetics with spacings around colon (:).
[simgrid.git] / src / kernel / EngineImpl.cpp
index 3e47039..e769b07 100644 (file)
@@ -115,11 +115,12 @@ static void segvhandler(int signum, siginfo_t* siginfo, void* /*context*/)
   std::raise(signum);
 }
 
-/**
- * Install signal handler for SIGSEGV.
- */
-static void install_segvhandler()
+static void install_signal_handlers()
 {
+  /* Install signal handler for SIGINT */
+  std::signal(SIGINT, inthandler);
+
+  /* Install signal handler for SIGSEGV */
   if (simgrid::kernel::context::Context::install_sigsegv_stack(true) == -1) {
     XBT_WARN("Failed to register alternate signal stack: %s", strerror(errno));
     return;
@@ -181,12 +182,9 @@ void EngineImpl::initialize(int* argc, char** argv)
 
   instance_->context_mod_init();
 
-  /* Prepare to display some more info when dying on Ctrl-C pressing */
-  std::signal(SIGINT, inthandler);
-  install_segvhandler();
+  install_signal_handlers();
 
   /* register a function to be called by SURF after the environment creation */
-  sg_platf_init();
   s4u::Engine::on_platform_created_cb([this]() { this->presolve(); });
 
   if (config::get_value<bool>("debug/clean-atexit"))
@@ -273,7 +271,7 @@ void EngineImpl::shutdown()
   }
 
   tmgr_finalize();
-  sg_platf_exit();
+  sg_platf_parser_finalize();
 
   delete instance_;
   instance_ = nullptr;
@@ -313,8 +311,7 @@ void EngineImpl::load_platform(const std::string& platf)
 
 void EngineImpl::load_deployment(const std::string& file) const
 {
-  sg_platf_exit();
-  sg_platf_init();
+  sg_platf_parser_finalize();
 
   surf_parse_open(file);
   surf_parse();