--- rpl/src/instructions_d5.c 2011/10/04 19:32:35 1.76 +++ rpl/src/instructions_d5.c 2011/11/18 21:03:24 1.79 @@ -817,7 +817,6 @@ instruction_detach(struct_processus *s_e int pipe_initialisation_segment_signaux[2]; logical1 drapeau; - logical1 variable_partagee; pid_t ppid; pid_t pid_final; @@ -856,6 +855,8 @@ instruction_detach(struct_processus *s_e unsigned long i; + volatile logical1 variable_partagee; + (*s_etat_processus).erreur_execution = d_ex; attente.tv_sec = 0; @@ -1998,7 +1999,9 @@ instruction_detach(struct_processus *s_e } else { - if ((*s_etat_processus).at_exit != NULL) + if (((*s_etat_processus).var_volatile_alarme == 0) + && ((*s_etat_processus).arret_depuis_abort == 0) + && ((*s_etat_processus).at_exit != NULL)) { (*s_etat_processus).var_volatile_requete_arret = 0;