--- rpl/src/optimisation.c 2013/03/23 16:14:39 1.50 +++ rpl/src/optimisation.c 2017/07/13 07:57:31 1.77 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.13 - Copyright (C) 1989-2013 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.27 + Copyright (C) 1989-2017 Dr. BERTRAND Joël This file is part of RPL/2. @@ -36,7 +36,8 @@ */ logical1 -sequenceur_optimise(struct_processus *s_etat_processus) +sequenceur_optimise(struct_processus *s_etat_processus, struct_liste_chainee + *l_bibliotheques) { integer8 adresse_point_entree; integer8 i; @@ -79,12 +80,6 @@ sequenceur_optimise(struct_processus *s_ (*s_etat_processus).autorisation_empilement_programme = 'Y'; (*s_etat_processus).mode_execution_programme = 'N'; - if (pthread_mutex_lock(&mutex_liste_variables_partagees) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return(d_erreur); - } - nb_variables = nombre_variables(s_etat_processus); if ((tableau = malloc(((size_t) nb_variables) * @@ -101,18 +96,11 @@ sequenceur_optimise(struct_processus *s_ liberation_mutexes_arbre_variables_partagees(s_etat_processus, (*(*s_etat_processus).s_arbre_variables_partagees)); - pthread_mutex_unlock(&mutex_liste_variables_partagees); return(d_erreur); } nb_variables = liste_variables(s_etat_processus, tableau); - if (pthread_mutex_unlock(&mutex_liste_variables_partagees) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return(d_erreur); - } - for(i = 0; i < nb_variables; i++) { if (tableau[i].niveau == 0) @@ -169,6 +157,7 @@ sequenceur_optimise(struct_processus *s_ registre = (*s_etat_processus).autorisation_nom_implicite; (*s_etat_processus).autorisation_nom_implicite = 'Y'; + (*s_etat_processus).type_en_cours = NON; recherche_type(s_etat_processus); (*s_etat_processus).autorisation_nom_implicite = registre;