Diff for /rpl/src/rplcore.c between versions 1.5 and 1.46

version 1.5, 2010/03/04 10:17:55 version 1.46, 2013/03/22 10:20:35
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.12    RPL/2 (R) version 4.1.13
   Copyright (C) 1989-2010 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 20 Line 20
 */  */
   
   
 #include "rpl.conv.h"  #include "rpl-conv.h"
   
   
 /*  /*
Line 43  rplcore(struct_processus *s_etat_process Line 43  rplcore(struct_processus *s_etat_process
     logical1                    erreur;      logical1                    erreur;
     logical1                    fin_boucle;      logical1                    fin_boucle;
   
     long                        i;      int                         longueur_lignes = 65;
     long                        j;  
     long                        longueur_lignes = 65;      integer8                    i;
       integer8                    j;
   
     struct_liste_chainee        *l_base_pile;      struct_liste_chainee        *l_base_pile;
     struct_liste_chainee        *l_element_courant;      struct_liste_chainee        *l_element_courant;
Line 63  rplcore(struct_processus *s_etat_process Line 64  rplcore(struct_processus *s_etat_process
   
     (*s_etat_processus).core = d_faux;      (*s_etat_processus).core = d_faux;
   
       cf(s_etat_processus, 34);
   
     sf(s_etat_processus, 37);      sf(s_etat_processus, 37);
     sf(s_etat_processus, 38);      sf(s_etat_processus, 38);
     sf(s_etat_processus, 39);      sf(s_etat_processus, 39);
Line 102  rplcore(struct_processus *s_etat_process Line 105  rplcore(struct_processus *s_etat_process
     }      }
   
     snprintf(nom, strlen(ds_rplcore) + 64 + 1,      snprintf(nom, strlen(ds_rplcore) + 64 + 1,
             "%s-%lu-%lu", ds_rplcore, (unsigned long) getpid(),              "%s-%llu-%llu", ds_rplcore, (unsigned long long) getpid(),
             (unsigned long) pthread_self());              (unsigned long long) pthread_self());
   
     if ((fichier = fopen(nom, "w+")) == NULL)      if ((fichier = fopen(nom, "w+")) == NULL)
     {      {
Line 142  rplcore(struct_processus *s_etat_process Line 145  rplcore(struct_processus *s_etat_process
         return;          return;
     }      }
   
     if (fprintf(fichier, "// Error :\n%s [%s at level %lu]\n\n",      if ((*s_etat_processus).instruction_derniere_erreur != NULL)
       {
           if (fprintf(fichier, "// Error :\n%s [level %lld]\n\n",
                   message_erreur, (*s_etat_processus).niveau_derniere_erreur) < 0)
           {
               free(message_erreur);
   
               (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
               return;
           }
       }
       else if ((*s_etat_processus).instruction_derniere_erreur[0] ==
               d_code_fin_chaine)
       {
           if (fprintf(fichier, "// Error :\n%s [level %lld]\n\n",
                   message_erreur, (*s_etat_processus).niveau_derniere_erreur) < 0)
           {
               free(message_erreur);
   
               (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
               return;
           }
       }
       else if (fprintf(fichier, "// Error :\n%s [%s at level %lld]\n\n",
             message_erreur, (*s_etat_processus).instruction_derniere_erreur,              message_erreur, (*s_etat_processus).instruction_derniere_erreur,
             (*s_etat_processus).niveau_derniere_erreur) < 0)              (*s_etat_processus).niveau_derniere_erreur) < 0)
     {      {
Line 154  rplcore(struct_processus *s_etat_process Line 180  rplcore(struct_processus *s_etat_process
   
     free(message_erreur);      free(message_erreur);
   
       if (fprintf(fichier, "// System stack\n\n") < 0)
       {
           (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
           return;
       }
   
       trace(s_etat_processus, fichier);
   
     if (fprintf(fichier, "// Process stack\n\n") < 0)      if (fprintf(fichier, "// Process stack\n\n") < 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;          (*s_etat_processus).erreur_systeme = d_es_erreur_fichier;
Line 450  rplcore(struct_processus *s_etat_process Line 484  rplcore(struct_processus *s_etat_process
                     while(((*ptr_bis) != d_code_fin_chaine) &&                      while(((*ptr_bis) != d_code_fin_chaine) &&
                             (fin_boucle == d_faux))                              (fin_boucle == d_faux))
                     {                      {
                         if (j == (long) (*s_etat_processus).position_courante)                          if (j == (*s_etat_processus).position_courante)
                         {                          {
                             if (fprintf(fichier, ">|<") < 0)                              if (fprintf(fichier, ">|<") < 0)
                             {                              {
Line 495  rplcore(struct_processus *s_etat_process Line 529  rplcore(struct_processus *s_etat_process
                         }                          }
                     }                      }
   
                     if ((i <= (long) (*s_etat_processus).position_courante) &&                      if ((i <= (*s_etat_processus).position_courante) &&
                             ((i + longueur_lignes) > (long) (*s_etat_processus)                              ((i + longueur_lignes) > (*s_etat_processus)
                             .position_courante))                              .position_courante))
                     {                      {
                         if (fprintf(fichier, "\nError  : ") < 0)                          if (fprintf(fichier, "\nError  : ") < 0)

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


CVSweb interface <joel.bertrand@systella.fr>