--- rpl/src/instructions_s1.c 2012/06/13 08:29:38 1.50 +++ rpl/src/instructions_s1.c 2012/10/01 11:05:06 1.55 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.1.9 + RPL/2 (R) version 4.1.11 Copyright (C) 1989-2012 Dr. BERTRAND Joël This file is part of RPL/2. @@ -2572,15 +2572,6 @@ instruction_start(struct_processus *s_et } } - empilement_pile_systeme(s_etat_processus); - - if ((*s_etat_processus).erreur_systeme != d_es) - { - return; - } - - (*(*s_etat_processus).l_base_pile_systeme).type_cloture = 'S'; - if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile), &s_objet_1) == d_erreur) { @@ -2614,6 +2605,15 @@ instruction_start(struct_processus *s_et return; } + empilement_pile_systeme(s_etat_processus); + + if ((*s_etat_processus).erreur_systeme != d_es) + { + return; + } + + (*(*s_etat_processus).l_base_pile_systeme).type_cloture = 'S'; + (*(*s_etat_processus).l_base_pile_systeme).indice_boucle = s_objet_2; (*(*s_etat_processus).l_base_pile_systeme).limite_indice_boucle = s_objet_1; @@ -3399,13 +3399,12 @@ instruction_syseval(struct_processus *s_ logical1 presence_stdin; long i; + long longueur_ecriture; long longueur_traitee; long nombre_arguments; pid_t pid; - ssize_t longueur_ecriture; - struct_liste_chainee *l_element_courant; struct_liste_chainee *l_element_precedent; struct_liste_chainee *l_element_stdin; @@ -4166,7 +4165,7 @@ instruction_syseval(struct_processus *s_ if (((*(*l_element_courant).donnee).objet = analyse_flux(s_etat_processus, ptr, - &longueur_tampon)) == NULL) + strlen(ptr))) == NULL) { (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;