X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/907ffb649d0e444a20162cb7696ad3523248f4b0..b61fd75d5de007848291c118e37bfe6aa3aa3fa9:/src/simdag/sd_task.c?ds=sidebyside diff --git a/src/simdag/sd_task.c b/src/simdag/sd_task.c index 03c33f93c4..4d91e4bccb 100644 --- a/src/simdag/sd_task.c +++ b/src/simdag/sd_task.c @@ -324,7 +324,7 @@ void SD_task_dump(SD_task_t task) void SD_task_dotty(SD_task_t task,void* out) { unsigned int counter; SD_dependency_t dependency; - fprintf(out, " T%ld [label=\"%.20s\"",(unsigned long int)task, task->name); + fprintf(out, " T%p [label=\"%.20s\"",task, task->name); switch(task->kind){ case SD_TASK_COMM_E2E: fprintf(out,", shape=box"); @@ -332,6 +332,8 @@ void SD_task_dotty(SD_task_t task,void* out) { case SD_TASK_COMP_SEQ: fprintf(out,", shape=circle"); break; + default: + xbt_die("Unknown task type!"); } fprintf(out,"];\n"); xbt_dynar_foreach(task->tasks_before,counter,dependency) { @@ -772,6 +774,7 @@ static void __SD_task_destroy_scheduling_data(SD_task_t task) xbt_free(task->computation_amount); xbt_free(task->communication_amount); + task->computation_amount = task->communication_amount = NULL; } /* Runs a task. This function is directly called by __SD_task_try_to_run if the task @@ -1163,6 +1166,12 @@ void SD_task_destroy(SD_task_t task) if (task->workstation_list != NULL) xbt_free(task->workstation_list); + if (task->communication_amount) + xbt_free(task->communication_amount); + + if (task->computation_amount) + xbt_free(task->computation_amount); + xbt_dynar_free(&task->tasks_before); xbt_dynar_free(&task->tasks_after); xbt_free(task);