Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
commit some harmless changes
[simgrid.git] / src / surf / surf_interface.cpp
index 7ebcf63..4bbbdfb 100644 (file)
@@ -256,36 +256,31 @@ int find_model_description(s_surf_model_description_t * table,
   return -1;
 }
 
-static inline void surf_storage_free(void *r)
-{
-  delete static_cast<simgrid::surf::StorageImpl*>(r);
-}
-
-void sg_version_check(int lib_version_major,int lib_version_minor,int lib_version_patch) {
-    if ((lib_version_major != SIMGRID_VERSION_MAJOR) || (lib_version_minor != SIMGRID_VERSION_MINOR)) {
-      fprintf(stderr,
+void sg_version_check(int lib_version_major, int lib_version_minor, int lib_version_patch)
+{
+  if ((lib_version_major != SIMGRID_VERSION_MAJOR) || (lib_version_minor != SIMGRID_VERSION_MINOR)) {
+    fprintf(stderr, "FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
+                    "and then linked against SimGrid %d.%d.%d. Please fix this.\n",
+            lib_version_major, lib_version_minor, lib_version_patch, SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR,
+            SIMGRID_VERSION_PATCH);
+    abort();
+  }
+  if (lib_version_patch != SIMGRID_VERSION_PATCH) {
+    if (SIMGRID_VERSION_PATCH >= 90 || lib_version_patch >= 90) {
+      fprintf(
+          stderr,
           "FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
-          "and then linked against SimGrid %d.%d.%d. Please fix this.\n",
-          lib_version_major,lib_version_minor,lib_version_patch,
-          SIMGRID_VERSION_MAJOR,SIMGRID_VERSION_MINOR,SIMGRID_VERSION_PATCH);
+          "and then linked against SimGrid %d.%d.%d. \n"
+          "One of them is a development version, and should not be mixed with the stable release. Please fix this.\n",
+          lib_version_major, lib_version_minor, lib_version_patch, SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR,
+          SIMGRID_VERSION_PATCH);
       abort();
     }
-    if (lib_version_patch != SIMGRID_VERSION_PATCH) {
-      if(SIMGRID_VERSION_PATCH >= 90 || lib_version_patch >=90){
-        fprintf(stderr,
-        "FATAL ERROR: Your program was compiled with SimGrid version %d.%d.%d, "
-        "and then linked against SimGrid %d.%d.%d. \n"
-        "One of them is a development version, and should not be mixed with the stable release. Please fix this.\n",
-        lib_version_major,lib_version_minor,lib_version_patch,
-        SIMGRID_VERSION_MAJOR,SIMGRID_VERSION_MINOR,SIMGRID_VERSION_PATCH);
-        abort();
-      }
-        fprintf(stderr,
-            "Warning: Your program was compiled with SimGrid version %d.%d.%d, "
-            "and then linked against SimGrid %d.%d.%d. Proceeding anyway.\n",
-            lib_version_major,lib_version_minor,lib_version_patch,
-            SIMGRID_VERSION_MAJOR,SIMGRID_VERSION_MINOR,SIMGRID_VERSION_PATCH);
-    }
+    fprintf(stderr, "Warning: Your program was compiled with SimGrid version %d.%d.%d, "
+                    "and then linked against SimGrid %d.%d.%d. Proceeding anyway.\n",
+            lib_version_major, lib_version_minor, lib_version_patch, SIMGRID_VERSION_MAJOR, SIMGRID_VERSION_MINOR,
+            SIMGRID_VERSION_PATCH);
+  }
 }
 
 void sg_version_get(int* ver_major, int* ver_minor, int* ver_patch)
@@ -345,12 +340,8 @@ void surf_init(int *argc, char **argv)
   XBT_DEBUG("Create all Libs");
   USER_HOST_LEVEL = simgrid::s4u::Host::extension_create(nullptr);
 
-  storage_lib = xbt_lib_new();
   watched_hosts_lib = xbt_dict_new_homogeneous(nullptr);
 
-  XBT_DEBUG("Add SURF levels");
-  SURF_STORAGE_LEVEL = xbt_lib_add_level(storage_lib,surf_storage_free);
-
   xbt_init(argc, argv);
   if (not all_existing_models)
     all_existing_models = new std::vector<simgrid::surf::Model*>();
@@ -371,7 +362,6 @@ void surf_exit()
   TRACE_end();                  /* Just in case it was not called by the upper layer (or there is no upper layer) */
 
   sg_host_exit();
-  xbt_lib_free(&storage_lib);
   sg_link_exit();
   xbt_dict_free(&watched_hosts_lib);
   for (auto e : storage_types) {
@@ -383,6 +373,9 @@ void surf_exit()
     delete stype->model_properties;
     free(stype);
   }
+  for (auto s : *simgrid::surf::StorageImpl::storages)
+    delete s.second;
+  delete simgrid::surf::StorageImpl::storages;
 
   for (auto model : *all_existing_models)
     delete model;