--- rpl/src/interruptions.c 2011/08/09 11:31:36 1.60 +++ rpl/src/interruptions.c 2011/08/30 14:19:28 1.61 @@ -986,6 +986,23 @@ liberation_threads(struct_processus *s_e element_courant = element_suivant; } + element_courant = (*s_etat_processus).l_base_pile_undo; + while(element_courant != NULL) + { + element_suivant = (*((struct_liste_chainee *) + element_courant)).suivant; + + pthread_mutex_trylock(&((*(*((struct_liste_chainee *) + element_courant)).donnee).mutex)); + pthread_mutex_unlock(&((*(*((struct_liste_chainee *) + element_courant)).donnee).mutex)); + liberation(s_etat_processus, + (*((struct_liste_chainee *) element_courant)).donnee); + free(element_courant); + + element_courant = element_suivant; + } + element_courant = (*s_etat_processus).l_base_pile_systeme; while(element_courant != NULL) {