Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
prefer automatic memory management
[simgrid.git] / src / surf / surf_interface.cpp
index ce3e759..61081b2 100644 (file)
@@ -27,9 +27,9 @@ XBT_LOG_NEW_DEFAULT_SUBCATEGORY(surf_kernel, surf, "Logging specific to SURF (ke
  * Utils *
  *********/
 
-std::vector<simgrid::kernel::resource::Model*>* all_existing_models = nullptr; /* to destroy models correctly */
+std::vector<simgrid::kernel::resource::Model*> all_existing_models; /* to destroy models correctly */
 
-simgrid::trace_mgr::future_evt_set *future_evt_set = nullptr;
+simgrid::trace_mgr::future_evt_set future_evt_set;
 std::vector<std::string> surf_path;
 std::vector<simgrid::s4u::Host*> host_that_restart;
 /**  set of hosts for which one want to be notified if they ever restart. */
@@ -296,10 +296,6 @@ void surf_init(int *argc, char **argv)
   USER_HOST_LEVEL = simgrid::s4u::Host::extension_create(nullptr);
 
   xbt_init(argc, argv);
-  if (not all_existing_models)
-    all_existing_models = new std::vector<simgrid::kernel::resource::Model*>();
-  if (not future_evt_set)
-    future_evt_set = new simgrid::trace_mgr::future_evt_set();
 
   sg_config_init(argc, argv);
 
@@ -317,12 +313,10 @@ void surf_exit()
     delete stype;
   }
 
-  for (auto const& model : *all_existing_models)
+  for (auto const& model : all_existing_models)
     delete model;
-  delete all_existing_models;
 
-  delete future_evt_set;
-  future_evt_set = nullptr;
+  xbt_free(surf_plugin_description);
 
   tmgr_finalize();
   sg_platf_exit();