- comms = xbt_dynar_new(sizeof(msg_comm_t), NULL);
-
- xbt_assert1(sscanf(argv[1],"%d", &id),
- "Invalid argument %s\n",argv[1]);
- sprintf(mailbox,"receiver-%d",id);
- MSG_process_sleep (10);
- msg_comm_t res_irecv = NULL;
- m_task_t task = NULL;
- m_task_t task_com = NULL;
- for(i=0; i<tasks ;i++)
- {
- INFO1("Wait to receive task %d",i);
- res_irecv = MSG_task_irecv(&task, mailbox);
- xbt_dynar_push_as(comms, msg_comm_t , res_irecv);
- task = NULL;
- res_irecv = NULL;
+ m_task_t *task = xbt_new(m_task_t, tasks);
+
+ int read;
+ read = sscanf(argv[1], "%d", &id);
+ xbt_assert1(read, "Invalid argument %s\n", argv[1]);
+ sprintf(mailbox, "receiver-%d", id);
+ MSG_process_sleep(10);
+ msg_comm_t res_irecv;
+ for (i = 0; i < tasks; i++) {
+ INFO1("Wait to receive task %d", i);
+ task[i] = NULL;
+ res_irecv = MSG_task_irecv(&task[i], mailbox);
+ xbt_dynar_push_as(comms, msg_comm_t, res_irecv);