--- rpl/src/instructions_a5.c 2013/04/05 13:07:20 1.47 +++ rpl/src/instructions_a5.c 2013/05/23 12:45:08 1.48 @@ -272,6 +272,12 @@ instruction_alarm(struct_processus *s_et scrutation_injection(s_etat_processus); + if (pthread_mutex_lock(&((*s_etat_processus).mutex)) != 0) + { + (*s_etat_processus).erreur_systeme = d_es_processus; + return; + } + if ((*s_etat_processus).nombre_interruptions_non_affectees != 0) { affectation_interruptions_logicielles(s_etat_processus); @@ -282,6 +288,12 @@ instruction_alarm(struct_processus *s_et traitement_interruptions_logicielles(s_etat_processus); } + if (pthread_mutex_unlock(&((*s_etat_processus).mutex)) != 0) + { + (*s_etat_processus).erreur_systeme = d_es_processus; + return; + } + gettimeofday(&fin_interruption, NULL); if (fin_interruption.tv_usec < debut_interruption.tv_usec)