Diff for /rpl/src/gestion_pile_last.c between versions 1.47 and 1.48

version 1.47, 2014/04/25 07:37:29 version 1.48, 2014/05/14 08:02:56
Line 49  empilement_pile_last(struct_processus *s Line 49  empilement_pile_last(struct_processus *s
     integer8                        i;      integer8                        i;
   
     erreur = d_absence_erreur;      erreur = d_absence_erreur;
   
     l_element_courant = (*s_etat_processus).l_base_pile_last;      l_element_courant = (*s_etat_processus).l_base_pile_last;
   
     while(l_element_courant != NULL)      while(l_element_courant != NULL)
     {      {
         liberation(s_etat_processus, (*l_element_courant).donnee);          liberation(s_etat_processus, (*l_element_courant).donnee);
Line 100  empilement_pile_last(struct_processus *s Line 100  empilement_pile_last(struct_processus *s
          */           */
   
         (*s_etat_processus).erreur_execution = d_ex_manque_argument;          (*s_etat_processus).erreur_execution = d_ex_manque_argument;
   
           /*
            * En cas de nombre d'arguments insuffisant, cette routine
            * déclenche une erreur. Si la pile LAST est active, la récupération
            * de l'erreur force la copie de la pile LAST dans la pile
            * opérationnelle courante. Dans notre cas, les arguments n'ont pas
            * encore été consommés pas la routine appelante et il convient
            * d'éliminer les arguments de la pile opérationnelle avant de retourner
            * à la routine appelante.
            */
   
           l_element_courant = (*s_etat_processus).l_base_pile;
   
           for(; i > 0; i--)
           {
               if (depilement(s_etat_processus, &((*s_etat_processus).l_base_pile),
                       &s_objet) == d_erreur)
               {
                   (*s_etat_processus).erreur_execution = d_ex_manque_argument;
                   return(erreur);
               }
   
               liberation(s_etat_processus, s_objet);
           }
     }      }
   
     return(erreur);      return(erreur);

Removed from v.1.47  
changed lines
  Added in v.1.48


CVSweb interface <joel.bertrand@systella.fr>