--- rpl/src/instructions_d5.c 2015/02/01 09:47:18 1.125 +++ rpl/src/instructions_d5.c 2015/07/21 12:22:15 1.130 @@ -1,6 +1,9 @@ +#define DEBUG_RETURN +#define DEBUG_ERREURS + /* ================================================================================ - RPL/2 (R) version 4.1.20 + RPL/2 (R) version 4.1.22 Copyright (C) 1989-2015 Dr. BERTRAND Joël This file is part of RPL/2. @@ -1269,13 +1272,14 @@ instruction_detach(struct_processus *s_e * Processus fils */ + liberation_queue_signaux(s_etat_processus); + creation_queue_signaux(s_etat_processus); + if (lancement_thread_signaux(s_etat_processus) != d_absence_erreur) { (*s_etat_processus).erreur_systeme = d_es_processus; } - liberation_queue_signaux(s_etat_processus); - creation_queue_signaux(s_etat_processus); routine_recursive = 0; (*s_etat_processus).pointeur_signal_lecture = 0; @@ -2788,7 +2792,6 @@ instruction_detach(struct_processus *s_e closelog(); - liberation_allocateur(s_etat_processus); retrait_thread(s_etat_processus); pthread_mutex_destroy(&((*s_etat_processus).mutex_pile_processus)); @@ -2815,6 +2818,7 @@ instruction_detach(struct_processus *s_e destruction_queue_signaux(s_etat_processus); liberation_contexte_cas(s_etat_processus); arret_thread_signaux(s_etat_processus); + liberation_allocateur(s_etat_processus); liberation_allocateur_buffer(s_etat_processus); pthread_mutex_destroy(&((*s_etat_processus).mutex_allocation_buffer)); sys_free(s_etat_processus);