--- rpl/src/rpl.c 2013/04/02 12:20:51 1.141 +++ rpl/src/rpl.c 2013/05/23 12:45:08 1.144 @@ -3404,6 +3404,7 @@ rplinit(int argc, char *argv[], char *en (*s_etat_processus).liste_mutexes = NULL; (*s_etat_processus).sections_critiques = 0; + (*s_etat_processus).initialisation_scheduler = d_faux; (*s_etat_processus).test_instruction = 'N'; (*s_etat_processus).nombre_arguments = 0; @@ -4905,6 +4906,8 @@ rplinit(int argc, char *argv[], char *en return(EXIT_FAILURE); } + empilement_pile_systeme(s_etat_processus); + if (evaluation(s_etat_processus, s_objet, 'E') == d_erreur) { @@ -5675,8 +5678,6 @@ rplinit(int argc, char *argv[], char *en } } - pthread_mutex_unlock(&((*s_etat_processus).mutex)); - if ((*s_etat_processus) .nombre_interruptions_non_affectees != 0) { @@ -5684,6 +5685,7 @@ rplinit(int argc, char *argv[], char *en s_etat_processus); } + pthread_mutex_unlock(&((*s_etat_processus).mutex)); nanosleep(&attente, NULL); scrutation_interruptions(s_etat_processus); pthread_mutex_lock(&((*s_etat_processus).mutex));