Diff for /rpl/src/instructions_s4.c between versions 1.2 and 1.8

version 1.2, 2010/01/27 22:22:15 version 1.8, 2010/04/21 13:45:49
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.10    RPL/2 (R) version 4.0.15
   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 611  instruction_store(struct_processus *s_et Line 611  instruction_store(struct_processus *s_et
     file                                *fichier;      file                                *fichier;
   
     logical1                            i45;      logical1                            i45;
       logical1                            i48;
     logical1                            i49;      logical1                            i49;
     logical1                            i50;      logical1                            i50;
   
Line 618  instruction_store(struct_processus *s_et Line 619  instruction_store(struct_processus *s_et
     struct_objet                        *s_objet_argument_2;      struct_objet                        *s_objet_argument_2;
   
     unsigned char                       *ligne;      unsigned char                       *ligne;
       unsigned char                       *ligne_convertie;
       unsigned char                       registre;
   
     (*s_etat_processus).erreur_execution = d_ex;      (*s_etat_processus).erreur_execution = d_ex;
   
Line 710  instruction_store(struct_processus *s_et Line 713  instruction_store(struct_processus *s_et
         }          }
   
         i45 = test_cfsf(s_etat_processus, 45);          i45 = test_cfsf(s_etat_processus, 45);
           i48 = test_cfsf(s_etat_processus, 48);
         i49 = test_cfsf(s_etat_processus, 49);          i49 = test_cfsf(s_etat_processus, 49);
         i50 = test_cfsf(s_etat_processus, 50);          i50 = test_cfsf(s_etat_processus, 50);
   
         cf(s_etat_processus, 45);          cf(s_etat_processus, 45);
           cf(s_etat_processus, 48);
         cf(s_etat_processus, 49);          cf(s_etat_processus, 49);
         cf(s_etat_processus, 50);          cf(s_etat_processus, 50);
   
Line 723  instruction_store(struct_processus *s_et Line 728  instruction_store(struct_processus *s_et
             return;              return;
         }          }
   
           registre = (*s_etat_processus).autorisation_conversion_chaine;
           (*s_etat_processus).autorisation_conversion_chaine = 'N';
   
           ligne = formateur(s_etat_processus, 0, s_objet_argument_2);
   
           if ((ligne_convertie = transliteration(s_etat_processus,
                   ligne, d_locale, "UTF-8")) == NULL)
           {
               free(ligne);
   
               liberation(s_etat_processus, s_objet_argument_1);
               liberation(s_etat_processus, s_objet_argument_2);
               return;
           }
   
           free(ligne);
           ligne = ligne_convertie;
   
           (*s_etat_processus).autorisation_conversion_chaine = registre;
   
         if ((*s_objet_argument_2).type == CHN)          if ((*s_objet_argument_2).type == CHN)
         {          {
             if (fprintf(fichier, "\"%s\"\n", ligne = formateur(s_etat_processus,              if (fprintf(fichier, "\"%s\"\n", ligne) < 0)
                     0, s_objet_argument_2)) < 0)  
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;                  (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
                 return;                  return;
             }              }
   
               (*s_etat_processus).autorisation_conversion_chaine = registre;
         }          }
         else          else
         {          {
             if (fprintf(fichier, "%s\n", ligne = formateur(s_etat_processus,              if (fprintf(fichier, "%s\n", ligne) < 0)
                     0, s_objet_argument_2)) < 0)  
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;                  (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
                 return;                  return;
             }              }
   
               (*s_etat_processus).autorisation_conversion_chaine = registre;
         }          }
   
         free(ligne);          free(ligne);
Line 759  instruction_store(struct_processus *s_et Line 786  instruction_store(struct_processus *s_et
             cf(s_etat_processus, 45);              cf(s_etat_processus, 45);
         }          }
   
           if (i48 == d_vrai)
           {
               sf(s_etat_processus, 48);
           }
           else
           {
               cf(s_etat_processus, 48);
           }
   
         if (i49 == d_vrai)          if (i49 == d_vrai)
         {          {
             sf(s_etat_processus, 49);              sf(s_etat_processus, 49);

Removed from v.1.2  
changed lines
  Added in v.1.8


CVSweb interface <joel.bertrand@systella.fr>