Diff for /rpl/src/instructions_r3.c between versions 1.3 and 1.5

version 1.3, 2010/02/10 10:14:24 version 1.5, 2010/03/04 17:42:46
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.11    RPL/2 (R) version 4.0.12
   Copyright (C) 1989-2010 Dr. BERTRAND Joël    Copyright (C) 1989-2010 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
Line 1044  instruction_recall(struct_processus *s_e Line 1044  instruction_recall(struct_processus *s_e
             return;              return;
         }          }
   
         if ((commande = malloc((strlen(ds_preprocesseur) +          if ((*s_etat_processus).rpl_home == NULL)
                 (2 * strlen((unsigned char *) (*s_objet).objet)) +  
                 (4 * strlen(d_exec_path)) +   
                 strlen(nom_fichier_temporaire) + strlen(instructions) - 11) *  
                 sizeof(unsigned char))) == NULL)  
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              if ((commande = malloc((strlen(ds_preprocesseur) +
             return;                      (2 * strlen((unsigned char *) (*s_objet).objet)) +
                       (4 * strlen(d_exec_path)) + 
                       strlen(nom_fichier_temporaire) + strlen(instructions) - 11)
                       * sizeof(unsigned char))) == NULL)
               {
                   (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                   return;
               }
   
               sprintf(commande, instructions, d_exec_path,
                       (unsigned char *) (*s_objet).objet,
                       d_exec_path, d_exec_path,
                       (unsigned char *) (*s_objet).objet,
                       d_exec_path, ds_preprocesseur, nom_fichier_temporaire);
         }          }
           else
           {
               if ((commande = malloc((strlen(ds_preprocesseur) +
                       (2 * strlen((unsigned char *) (*s_objet).objet)) +
                       (4 * strlen((*s_etat_processus).rpl_home)) + 
                       strlen(nom_fichier_temporaire) + strlen(instructions) - 11)
                       * sizeof(unsigned char))) == NULL)
               {
                   (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
                   return;
               }
   
         sprintf(commande, instructions, d_exec_path,              sprintf(commande, instructions, (*s_etat_processus).rpl_home,
                 (unsigned char *) (*s_objet).objet,                      (unsigned char *) (*s_objet).objet,
                 d_exec_path, d_exec_path, (unsigned char *) (*s_objet).objet,                      (*s_etat_processus).rpl_home, (*s_etat_processus).rpl_home,
                 d_exec_path, ds_preprocesseur, nom_fichier_temporaire);                      (unsigned char *) (*s_objet).objet,
                       (*s_etat_processus).rpl_home, ds_preprocesseur,
                       nom_fichier_temporaire);
           }
   
         if ((pipe = popen(commande, "r")) == NULL)          if ((pipe = popen(commande, "r")) == NULL)
         {          {

Removed from v.1.3  
changed lines
  Added in v.1.5


CVSweb interface <joel.bertrand@systella.fr>