- sem = SIMIX_sem_acquire_any(sems);
- xbt_dynar_foreach(comms,cursor,comm){
- if (comm->sem == sem) {
- comm_finished = comm;
- }
- }
- xbt_assert0(comm_finished,"Cannot find which communication finished");
+ found_comm = SIMIX_sem_acquire_any(sems);
+ xbt_assert0(found_comm!=-1,"Cannot find which communication finished");
+ xbt_dynar_get_cpy(comms,found_comm,&comm_finished);