Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use action_free to free the actions
authorthiery <thiery@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 7 Jul 2006 07:55:40 +0000 (07:55 +0000)
committerthiery <thiery@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Fri, 7 Jul 2006 07:55:40 +0000 (07:55 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@2500 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/simdag/sd_global.c
src/simdag/sd_task.c

index 592a1e8..56eb8b3 100644 (file)
@@ -154,7 +154,7 @@ SD_task_t* SD_simulate(double how_long)
       task = action->data;
       INFO1("Task '%s' done", SD_task_get_name(task));
       __SD_task_set_state(task, SD_DONE);
       task = action->data;
       INFO1("Task '%s' done", SD_task_get_name(task));
       __SD_task_set_state(task, SD_DONE);
-      xbt_free(action);
+      surf_workstation_resource->common_public->action_free(action);
       task->surf_action = NULL;
 
       /* the state has changed */
       task->surf_action = NULL;
 
       /* the state has changed */
@@ -196,7 +196,7 @@ SD_task_t* SD_simulate(double how_long)
       task = action->data;
       INFO1("Task '%s' failed", SD_task_get_name(task));
       __SD_task_set_state(task, SD_FAILED);
       task = action->data;
       INFO1("Task '%s' failed", SD_task_get_name(task));
       __SD_task_set_state(task, SD_FAILED);
-      xbt_free(action);
+      surf_workstation_resource->common_public->action_free(action);
       task->surf_action = NULL;
 
       if (!task->state_changed) {
       task->surf_action = NULL;
 
       if (!task->state_changed) {
index cf72e8b..8de0fdc 100644 (file)
@@ -585,7 +585,7 @@ void SD_task_destroy(SD_task_t task) {
     xbt_free(task->name);
 
   if (task->surf_action != NULL)
     xbt_free(task->name);
 
   if (task->surf_action != NULL)
-    xbt_free(task->surf_action);
+    surf_workstation_resource->common_public->action_free(task->surf_action);
 
   xbt_dynar_free(&task->tasks_before);
   xbt_dynar_free(&task->tasks_after);
 
   xbt_dynar_free(&task->tasks_before);
   xbt_dynar_free(&task->tasks_after);