--- rpl/src/gestion_threads.c 2010/04/28 06:41:06 1.11 +++ rpl/src/gestion_threads.c 2010/04/28 09:38:27 1.13 @@ -263,14 +263,20 @@ lancement_thread(void *argument) } else { - if (evaluation(s_etat_processus, (*s_etat_processus).at_exit, 'E') - == d_erreur) + if ((*s_etat_processus).at_exit != NULL) { - if (((*s_etat_processus).erreur_execution == d_ex) && - ((*s_etat_processus).erreur_systeme == d_es)) + (*s_etat_processus).var_volatile_requete_arret = 0; + (*s_etat_processus).var_volatile_traitement_retarde_stop = -1; + + if (evaluation(s_etat_processus, (*s_etat_processus).at_exit, + 'E') == d_erreur) { - (*s_etat_processus).erreur_execution = - d_ex_erreur_evaluation; + if (((*s_etat_processus).erreur_execution == d_ex) && + ((*s_etat_processus).erreur_systeme == d_es)) + { + (*s_etat_processus).erreur_execution = + d_ex_erreur_evaluation; + } } } }