Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix memleak
[simgrid.git] / src / surf / surf_routing.cpp
index e314b6a..6216697 100644 (file)
@@ -1263,13 +1263,15 @@ static void finalize_rec(AsPtr as) {
 
 /** \brief Frees all memory allocated by the routing module */
 void routing_exit(void) {
 
 /** \brief Frees all memory allocated by the routing module */
 void routing_exit(void) {
-  if (!routing_platf)
-    return;
-  xbt_dynar_free(&routing_platf->p_lastRoute);
-  finalize_rec(routing_platf->p_root);
   delete routing_platf;
 }
 
   delete routing_platf;
 }
 
+RoutingPlatf::~RoutingPlatf()
+{
+       xbt_dynar_free(&p_lastRoute);
+       finalize_rec(p_root);
+}
+
 AS_t surf_AS_get_routing_root() {
   return routing_platf->p_root;
 }
 AS_t surf_AS_get_routing_root() {
   return routing_platf->p_root;
 }