Diff for /rpl/src/instructions_s3.c between versions 1.42 and 1.49

version 1.42, 2012/12/19 09:58:26 version 1.49, 2013/12/03 09:36:15
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.12    RPL/2 (R) version 4.1.17
   Copyright (C) 1989-2012 Dr. BERTRAND Joël    Copyright (C) 1989-2013 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 50  instruction_sub(struct_processus *s_etat Line 50  instruction_sub(struct_processus *s_etat
     unsigned char               *ptr1;      unsigned char               *ptr1;
     unsigned char               *ptr2;      unsigned char               *ptr2;
   
     unsigned long               i;      integer8                    i;
   
     (*s_etat_processus).erreur_execution = d_ex;      (*s_etat_processus).erreur_execution = d_ex;
   
Line 188  instruction_sub(struct_processus *s_etat Line 188  instruction_sub(struct_processus *s_etat
             return;              return;
         }          }
   
         if (((*s_objet_resultat).objet = malloc(((ptr2 - ptr1) + 1) *          if (((*s_objet_resultat).objet = malloc(((size_t) ((ptr2 - ptr1) + 1)) *
                 sizeof(unsigned char))) == NULL)                  sizeof(unsigned char))) == NULL)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
Line 196  instruction_sub(struct_processus *s_etat Line 196  instruction_sub(struct_processus *s_etat
         }          }
   
         strncpy((unsigned char *) (*s_objet_resultat).objet, ptr1,          strncpy((unsigned char *) (*s_objet_resultat).objet, ptr1,
                 ptr2 - ptr1)[ptr2 - ptr1] = d_code_fin_chaine;                  (size_t) (ptr2 - ptr1))[ptr2 - ptr1] = d_code_fin_chaine;
     }      }
   
 /*  /*
Line 221  instruction_sub(struct_processus *s_etat Line 221  instruction_sub(struct_processus *s_etat
                 .objet;                  .objet;
         i = 1;          i = 1;
   
         while(i < (unsigned long) (*((integer8 *) (*s_objet_argument_2).objet)))          while(i < (*((integer8 *) (*s_objet_argument_2).objet)))
         {          {
             if (l_element_courant == NULL)              if (l_element_courant == NULL)
             {              {
Line 244  instruction_sub(struct_processus *s_etat Line 244  instruction_sub(struct_processus *s_etat
   
         (*s_objet_argument_3).objet = l_element_courant;          (*s_objet_argument_3).objet = l_element_courant;
   
         while(i < (unsigned long) (*((integer8 *) (*s_objet_argument_1).objet)))          while(i < (*((integer8 *) (*s_objet_argument_1).objet)))
         {          {
             if (l_element_courant == NULL)              if (l_element_courant == NULL)
             {              {

Removed from v.1.42  
changed lines
  Added in v.1.49


CVSweb interface <joel.bertrand@systella.fr>