Diff for /rpl/src/formateur.c between versions 1.70 and 1.79

version 1.70, 2014/07/17 08:07:17 version 1.79, 2016/03/01 22:12:27
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.1.19    RPL/2 (R) version 4.1.25
   Copyright (C) 1989-2014 Dr. BERTRAND Joël    Copyright (C) 1989-2016 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 103  formateur(struct_processus *s_etat_proce Line 103  formateur(struct_processus *s_etat_proce
 --------------------------------------------------------------------------------  --------------------------------------------------------------------------------
 */  */
   
         if (alsprintf(&chaine, "@ %016llX", (*((unsigned long long *)          if (alsprintf(s_etat_processus, &chaine,
                   "@ %016llX", (*((unsigned long long *)
                 ((*s_objet).objet)))) < 0)                  ((*s_objet).objet)))) < 0)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
Line 122  formateur(struct_processus *s_etat_proce Line 123  formateur(struct_processus *s_etat_proce
 #       pragma GCC diagnostic push  #       pragma GCC diagnostic push
 #       pragma GCC diagnostic ignored "-Wpointer-to-int-cast"  #       pragma GCC diagnostic ignored "-Wpointer-to-int-cast"
   
         if (alsprintf(&chaine, "Library $ %016llX [%s]",          if (alsprintf(s_etat_processus, &chaine, "Library $ %016llX [%s]",
                 (unsigned long long) (*((struct_bibliotheque *)                  (unsigned long long) (*((struct_bibliotheque *)
                 (*s_objet).objet)).descripteur, (*((struct_bibliotheque *)                  (*s_objet).objet)).descripteur, (*((struct_bibliotheque *)
                 (*s_objet).objet)).nom) < 0)                  (*s_objet).objet)).nom) < 0)
Line 146  formateur(struct_processus *s_etat_proce Line 147  formateur(struct_processus *s_etat_proce
 #       pragma GCC diagnostic push  #       pragma GCC diagnostic push
 #       pragma GCC diagnostic ignored "-Wpointer-to-int-cast"  #       pragma GCC diagnostic ignored "-Wpointer-to-int-cast"
   
         if (alsprintf(&chaine, "Semaphore $ %016llX '%s'", (unsigned long long)          if (alsprintf(s_etat_processus,
                   &chaine, "Semaphore $ %016llX '%s'", (unsigned long long)
                 &((*((struct_semaphore *) (*s_objet).objet)).semaphore),                  &((*((struct_semaphore *) (*s_objet).objet)).semaphore),
                 (*((struct_semaphore *) (*s_objet).objet)).nom) < 0)                  (*((struct_semaphore *) (*s_objet).objet)).nom) < 0)
         {          {
Line 170  formateur(struct_processus *s_etat_proce Line 172  formateur(struct_processus *s_etat_proce
                 "MYSQL") == 0)                  "MYSQL") == 0)
         {          {
 #           ifdef MYSQL_SUPPORT  #           ifdef MYSQL_SUPPORT
             if (alsprintf(&chaine, "Sql $ %016llX (%s)",              if (alsprintf(s_etat_processus, &chaine, "Sql $ %016llX (%s)",
                     (unsigned long long) (*((struct_connecteur_sql *)                      (unsigned long long) (*((struct_connecteur_sql *)
                     (*s_objet).objet)).descripteur.mysql,                      (*s_objet).objet)).descripteur.mysql,
                     (*((struct_connecteur_sql *) (*s_objet).objet)).type) < 0)                      (*((struct_connecteur_sql *) (*s_objet).objet)).type) < 0)
Line 197  formateur(struct_processus *s_etat_proce Line 199  formateur(struct_processus *s_etat_proce
                 "POSTGRESQL") == 0)                  "POSTGRESQL") == 0)
         {          {
 #           ifdef POSTGRESQL_SUPPORT  #           ifdef POSTGRESQL_SUPPORT
             if (alsprintf(&chaine, "Sql $ %016llX (%s)",              if (alsprintf(s_etat_processus, &chaine, "Sql $ %016llX (%s)",
                     (unsigned long long) (*((struct_connecteur_sql *)                      (unsigned long long) (*((struct_connecteur_sql *)
                     (*s_objet).objet)).descripteur.postgresql,                      (*s_objet).objet)).descripteur.postgresql,
                     (*((struct_connecteur_sql *) (*s_objet).objet)).type) < 0)                      (*((struct_connecteur_sql *) (*s_objet).objet)).type) < 0)
Line 239  formateur(struct_processus *s_etat_proce Line 241  formateur(struct_processus *s_etat_proce
         if ((*(*((struct_processus_fils *) (*s_objet).objet)).thread)          if ((*(*((struct_processus_fils *) (*s_objet).objet)).thread)
                 .processus_detache == d_vrai)                  .processus_detache == d_vrai)
         {          {
             if (alsprintf(&chaine, "Process $ %016llX", (unsigned long long)              if (alsprintf(s_etat_processus, &chaine,
                       "Process $ %016llX", (unsigned long long)
                     (*(*((struct_processus_fils *) (*s_objet).objet)).thread)                      (*(*((struct_processus_fils *) (*s_objet).objet)).thread)
                     .pid) < 0)                      .pid) < 0)
             {              {
Line 249  formateur(struct_processus *s_etat_proce Line 252  formateur(struct_processus *s_etat_proce
         }          }
         else          else
         {          {
             if (alsprintf(&chaine, "Light weight process $ %016llX/%016llX",              if (alsprintf(s_etat_processus, &chaine,
                       "Light weight process $ %016llX/%016llX",
                     (unsigned long long) (*(*((struct_processus_fils *)                      (unsigned long long) (*(*((struct_processus_fils *)
                     (*s_objet).objet)).thread).pid,                      (*s_objet).objet)).thread).pid,
                     (unsigned long long) (*(*((struct_processus_fils *)                      (unsigned long long) (*(*((struct_processus_fils *)
Line 269  formateur(struct_processus *s_etat_proce Line 273  formateur(struct_processus *s_etat_proce
 --------------------------------------------------------------------------------  --------------------------------------------------------------------------------
 */  */
   
         if (alsprintf(&chaine, "File $ %016llX", (unsigned long long)          if (alsprintf(s_etat_processus,
                   &chaine, "File $ %016llX", (unsigned long long)
                 (*((struct_fichier *) ((*s_objet).objet))).descripteur) < 0)                  (*((struct_fichier *) ((*s_objet).objet))).descripteur) < 0)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
Line 294  formateur(struct_processus *s_etat_proce Line 299  formateur(struct_processus *s_etat_proce
             cf(s_etat_processus, 45);              cf(s_etat_processus, 45);
         }          }
   
         if ((format_majuscule = conversion_majuscule(format)) == NULL)          if ((format_majuscule = conversion_majuscule(s_etat_processus,
                   format)) == NULL)
         {          {
               (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
             return(NULL);              return(NULL);
         }          }
   
Line 401  formateur(struct_processus *s_etat_proce Line 408  formateur(struct_processus *s_etat_proce
 --------------------------------------------------------------------------------  --------------------------------------------------------------------------------
 */  */
   
         if (alsprintf(&chaine, "Socket $ %016llX", (unsigned long long)          if (alsprintf(s_etat_processus, &chaine,
                   "Socket $ %016llX", (unsigned long long)
                 (*((struct_socket *) ((*s_objet).objet))).socket) < 0)                  (*((struct_socket *) ((*s_objet).objet))).socket) < 0)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
Line 426  formateur(struct_processus *s_etat_proce Line 434  formateur(struct_processus *s_etat_proce
             cf(s_etat_processus, 45);              cf(s_etat_processus, 45);
         }          }
   
         if ((format_majuscule = conversion_majuscule(format)) == NULL)          if ((format_majuscule = conversion_majuscule(s_etat_processus,
                   format)) == NULL)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;              (*s_etat_processus).erreur_systeme = d_es_allocation_memoire;
             return(NULL);              return(NULL);
Line 699  formateur(struct_processus *s_etat_proce Line 708  formateur(struct_processus *s_etat_proce
                                 || ((*s_etat_processus).instruction_courante[1]                                  || ((*s_etat_processus).instruction_courante[1]
                                 == '-')) ? d_vrai : d_faux;                                  == '-')) ? d_vrai : d_faux;
   
                           (*s_etat_processus).type_en_cours = NON;
                         recherche_type(s_etat_processus);                          recherche_type(s_etat_processus);
   
                         if ((*s_etat_processus).erreur_execution != d_ex)                          if ((*s_etat_processus).erreur_execution != d_ex)
Line 756  formateur(struct_processus *s_etat_proce Line 766  formateur(struct_processus *s_etat_proce
                             {                              {
                                 if ((strcmp(chaine_fonction, "AND") == 0) ||                                  if ((strcmp(chaine_fonction, "AND") == 0) ||
                                         (strcmp(chaine_fonction, "XOR") == 0) ||                                          (strcmp(chaine_fonction, "XOR") == 0) ||
                                           (strcmp(chaine_fonction, "EQV") == 0) ||
                                         (strcmp(chaine_fonction, "OR") == 0))                                          (strcmp(chaine_fonction, "OR") == 0))
                                 {                                  {
                                     autorisation_parenthese = d_vrai;                                      autorisation_parenthese = d_vrai;
Line 782  formateur(struct_processus *s_etat_proce Line 793  formateur(struct_processus *s_etat_proce
                                         (strcmp(chaine_fonction, "-") == 0) ||                                          (strcmp(chaine_fonction, "-") == 0) ||
                                         (strcmp(chaine_fonction, "AND") == 0) ||                                          (strcmp(chaine_fonction, "AND") == 0) ||
                                         (strcmp(chaine_fonction, "XOR") == 0) ||                                          (strcmp(chaine_fonction, "XOR") == 0) ||
                                           (strcmp(chaine_fonction, "EQV") == 0) ||
                                         (strcmp(chaine_fonction, "OR") == 0))                                          (strcmp(chaine_fonction, "OR") == 0))
                                 {                                  {
                                     autorisation_parenthese = d_vrai;                                      autorisation_parenthese = d_vrai;
Line 862  formateur(struct_processus *s_etat_proce Line 874  formateur(struct_processus *s_etat_proce
                                 "'%s'", (unsigned char *)                                  "'%s'", (unsigned char *)
                                 (*s_sous_objet_1).objet);                                  (*s_sous_objet_1).objet);
   
                           (*s_etat_processus).type_en_cours = NON;
                         recherche_type(s_etat_processus);                          recherche_type(s_etat_processus);
   
                         if ((*s_etat_processus).erreur_execution != d_ex)                          if ((*s_etat_processus).erreur_execution != d_ex)
Line 917  formateur(struct_processus *s_etat_proce Line 930  formateur(struct_processus *s_etat_proce
                             {                              {
                                 if ((strcmp(chaine_fonction, "AND") == 0) ||                                  if ((strcmp(chaine_fonction, "AND") == 0) ||
                                         (strcmp(chaine_fonction, "XOR") == 0) ||                                          (strcmp(chaine_fonction, "XOR") == 0) ||
                                           (strcmp(chaine_fonction, "EQV") == 0) ||
                                         (strcmp(chaine_fonction, "OR") == 0))                                          (strcmp(chaine_fonction, "OR") == 0))
                                 {                                  {
                                     autorisation_parenthese = d_vrai;                                      autorisation_parenthese = d_vrai;
Line 933  formateur(struct_processus *s_etat_proce Line 947  formateur(struct_processus *s_etat_proce
                                         (strcmp(chaine_fonction, "-") == 0) ||                                          (strcmp(chaine_fonction, "-") == 0) ||
                                         (strcmp(chaine_fonction, "AND") == 0) ||                                          (strcmp(chaine_fonction, "AND") == 0) ||
                                         (strcmp(chaine_fonction, "XOR") == 0) ||                                          (strcmp(chaine_fonction, "XOR") == 0) ||
                                           (strcmp(chaine_fonction, "EQV") == 0) ||
                                         (strcmp(chaine_fonction, "OR") == 0))                                          (strcmp(chaine_fonction, "OR") == 0))
                                 {                                  {
                                     autorisation_parenthese = d_vrai;                                      autorisation_parenthese = d_vrai;
Line 1159  formateur(struct_processus *s_etat_proce Line 1174  formateur(struct_processus *s_etat_proce
                             (*(*l_element_courant).donnee).objet)).nom_fonction,                              (*(*l_element_courant).donnee).objet)).nom_fonction,
                             "XOR") == 0) || (strcmp((*((struct_fonction *)                              "XOR") == 0) || (strcmp((*((struct_fonction *)
                             (*(*l_element_courant).donnee).objet)).nom_fonction,                              (*(*l_element_courant).donnee).objet)).nom_fonction,
                               "EQV") == 0) || (strcmp((*((struct_fonction *)
                               (*(*l_element_courant).donnee).objet)).nom_fonction,
                             "AND") == 0))                              "AND") == 0))
                     {                      {
                         if (depilement(s_etat_processus, &((*s_etat_processus)                          if (depilement(s_etat_processus, &((*s_etat_processus)
Line 1203  formateur(struct_processus *s_etat_proce Line 1220  formateur(struct_processus *s_etat_proce
                                 "'%s'", (unsigned char *)                                  "'%s'", (unsigned char *)
                                 (*s_sous_objet_1).objet);                                  (*s_sous_objet_1).objet);
   
                           (*s_etat_processus).type_en_cours = NON;
                         recherche_type(s_etat_processus);                          recherche_type(s_etat_processus);
   
                         if ((*s_etat_processus).erreur_execution != d_ex)                          if ((*s_etat_processus).erreur_execution != d_ex)
Line 1248  formateur(struct_processus *s_etat_proce Line 1266  formateur(struct_processus *s_etat_proce
                             }                              }
   
                             if (((strcmp(chaine_fonction, "OR") == 0) ||                              if (((strcmp(chaine_fonction, "OR") == 0) ||
                                       (strcmp(chaine_fonction, "EQV") == 0) ||
                                     (strcmp(chaine_fonction, "XOR") == 0)) &&                                      (strcmp(chaine_fonction, "XOR") == 0)) &&
                                     (strcmp((*((struct_fonction *)                                      (strcmp((*((struct_fonction *)
                                     (*(*l_element_courant).donnee).objet))                                      (*(*l_element_courant).donnee).objet))
Line 1278  formateur(struct_processus *s_etat_proce Line 1297  formateur(struct_processus *s_etat_proce
                                 "'%s'", (unsigned char *)                                  "'%s'", (unsigned char *)
                                 (*s_sous_objet_2).objet);                                  (*s_sous_objet_2).objet);
   
                           (*s_etat_processus).type_en_cours = NON;
                         recherche_type(s_etat_processus);                          recherche_type(s_etat_processus);
   
                         if ((*s_etat_processus).erreur_execution != d_ex)                          if ((*s_etat_processus).erreur_execution != d_ex)
Line 1323  formateur(struct_processus *s_etat_proce Line 1343  formateur(struct_processus *s_etat_proce
                             }                              }
   
                             if (((strcmp(chaine_fonction, "OR") == 0) ||                              if (((strcmp(chaine_fonction, "OR") == 0) ||
                                       (strcmp(chaine_fonction, "EQV") == 0) ||
                                     (strcmp(chaine_fonction, "XOR") == 0)) &&                                      (strcmp(chaine_fonction, "XOR") == 0)) &&
                                     (strcmp((*((struct_fonction *)                                      (strcmp((*((struct_fonction *)
                                     (*(*l_element_courant).donnee).objet))                                      (*(*l_element_courant).donnee).objet))
Line 3009  formateur(struct_processus *s_etat_proce Line 3030  formateur(struct_processus *s_etat_proce
     }      }
     else if ((*s_objet).type == MTX)      else if ((*s_objet).type == MTX)
     {      {
         if (alsprintf(&chaine, "Mutex $ %016llX owned by $ %016llX",          if (alsprintf(s_etat_processus, &chaine,
                   "Mutex $ %016llX owned by $ %016llX",
                 &((*((struct_mutex *) (*s_objet).objet)).mutex),                  &((*((struct_mutex *) (*s_objet).objet)).mutex),
                 (logical8) (*((struct_mutex *) (*s_objet).objet)).tid) < 0)                  (logical8) (*((struct_mutex *) (*s_objet).objet)).tid) < 0)
         {          {

Removed from v.1.70  
changed lines
  Added in v.1.79


CVSweb interface <joel.bertrand@systella.fr>