--- rpl/src/instructions_s1.c 2019/05/16 09:15:08 1.106 +++ rpl/src/instructions_s1.c 2019/05/16 12:03:01 1.107 @@ -4039,7 +4039,7 @@ instruction_syseval(struct_processus *s_ return; } - while((ios = (int) read_atomic(s_etat_processus, + while((ios = (int) read_atomic_signal(s_etat_processus, pipes_sortie[0], &(tampon[pointeur]), (size_t) longueur_lecture)) > 0) { @@ -4075,6 +4075,18 @@ instruction_syseval(struct_processus *s_ (*s_etat_processus).erreur_systeme = d_es_processus; return; } + + if ((*s_etat_processus).var_volatile_requete_arret == -1) + { + if ((*s_etat_processus).var_volatile_alarme == -1) + { + kill(pid, SIGKILL); + } + else + { + kill(pid, SIGTERM); + } + } } # ifndef SEMAPHORES_NOMMES