char mailbox_name[250];
m_task_t task = NULL;
double clock = MSG_get_clock();
- //FIXME: argument of action ignored so far; semantic not clear
- //char *from=xbt_dynar_get_as(action,2,char*);
+
sprintf(mailbox_name, "%s_%s", xbt_dynar_get_as(action, 2, char *),
MSG_process_get_name(MSG_process_self()));
comm = xbt_dynar_pop_as(globals->irecvs,msg_comm_t);
MSG_comm_wait(comm,-1);
task = xbt_dynar_pop_as(globals->tasks,m_task_t);
+ MSG_comm_destroy(comm);
MSG_task_destroy(task);
VERB2("%s %f", name, MSG_get_clock() - clock);
process_globals_t globals = (process_globals_t) MSG_process_get_data(MSG_process_self());
if (globals){
xbt_dynar_free_container(&(globals->isends));
+ xbt_dynar_free_container(&(globals->irecvs));
+ xbt_dynar_free_container(&(globals->tasks));
free(globals);
}
}