--- rpl/src/instructions_m4.c 2010/03/09 10:18:47 1.5 +++ rpl/src/instructions_m4.c 2010/06/24 10:10:44 1.10 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.0.13 + RPL/2 (R) version 4.0.17 Copyright (C) 1989-2010 Dr. BERTRAND Joël This file is part of RPL/2. @@ -396,16 +396,28 @@ instruction_mtxlock(struct_processus *s_ } } +# ifndef SEMAPHORES_NOMMES if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; } +# else + if (sem_post((*s_etat_processus).semaphore_fork) != 0) + { + (*s_etat_processus).erreur_systeme = d_es_processus; + return; + } +# endif if (pthread_mutex_lock(&((*((struct_mutex *) (*s_objet_argument).objet)) .mutex)) != 0) { +# ifndef SEMAPHORES_NOMMES while(sem_wait(&((*s_etat_processus).semaphore_fork)) == -1) +# else + while(sem_wait((*s_etat_processus).semaphore_fork) == -1) +# endif { if ((*s_etat_processus).profilage == d_vrai) { @@ -430,7 +442,11 @@ instruction_mtxlock(struct_processus *s_ return; } +# ifndef SEMAPHORES_NOMMES while(sem_wait(&((*s_etat_processus).semaphore_fork)) == -1) +# else + while(sem_wait((*s_etat_processus).semaphore_fork) == -1) +# endif { if (errno != EINTR) {