--- rpl/src/instructions_r6.c 2011/09/14 17:55:59 1.31 +++ rpl/src/instructions_r6.c 2011/09/20 08:56:23 1.32 @@ -265,7 +265,7 @@ instruction_recv(struct_processus *s_eta } } - if (pthread_mutex_unlock(&((*s_etat_processus).mutex_fork)) != 0) + if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -275,7 +275,7 @@ instruction_recv(struct_processus *s_eta (*(*((struct_processus_fils *) (*s_objet_argument).objet)) .thread).pipe_objets[0])) == NULL) { - if (pthread_mutex_lock(&((*s_etat_processus).mutex_fork)) != 0) + if (sem_wait(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -302,7 +302,7 @@ instruction_recv(struct_processus *s_eta return; } - if (pthread_mutex_lock(&((*s_etat_processus).mutex_fork)) != 0) + if (sem_wait(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -353,7 +353,7 @@ instruction_recv(struct_processus *s_eta return; } - if (pthread_mutex_unlock(&((*s_etat_processus).mutex_fork)) != 0) + if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -371,7 +371,7 @@ instruction_recv(struct_processus *s_eta } } - if (pthread_mutex_lock(&((*s_etat_processus).mutex_fork)) != 0) + if (sem_wait(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return;