--- rpl/src/instructions_p7.c 2011/09/14 17:55:59 1.35 +++ rpl/src/instructions_p7.c 2011/09/20 08:56:23 1.36 @@ -788,8 +788,7 @@ instruction_poke(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; @@ -801,8 +800,8 @@ instruction_poke(struct_processus *s_eta .pipe_nombre_injections[1], "-", sizeof(unsigned char))) != sizeof(unsigned char)) { - 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; @@ -845,8 +844,8 @@ instruction_poke(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; @@ -867,8 +866,7 @@ instruction_poke(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; @@ -1011,8 +1009,8 @@ instruction_poke(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; @@ -1024,8 +1022,8 @@ instruction_poke(struct_processus *s_eta .pipe_nombre_injections[1], "-", sizeof(unsigned char))) != sizeof(unsigned char)) { - 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; @@ -1068,8 +1066,8 @@ instruction_poke(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; @@ -1090,8 +1088,8 @@ instruction_poke(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;