--- rpl/src/rplcore.c 2011/06/22 13:27:04 1.25 +++ rpl/src/rplcore.c 2020/01/10 11:15:51 1.74 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.0.prerelease.3 - Copyright (C) 1989-2011 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.32 + Copyright (C) 1989-2020 Dr. BERTRAND Joël This file is part of RPL/2. @@ -43,9 +43,10 @@ rplcore(struct_processus *s_etat_process logical1 erreur; logical1 fin_boucle; - long i; - long j; - long longueur_lignes = 65; + int longueur_lignes = 65; + + integer8 i; + integer8 j; struct_liste_chainee *l_base_pile; struct_liste_chainee *l_element_courant; @@ -63,6 +64,8 @@ rplcore(struct_processus *s_etat_process (*s_etat_processus).core = d_faux; + cf(s_etat_processus, 34); + sf(s_etat_processus, 37); sf(s_etat_processus, 38); sf(s_etat_processus, 39); @@ -102,8 +105,8 @@ rplcore(struct_processus *s_etat_process } snprintf(nom, strlen(ds_rplcore) + 64 + 1, - "%s-%lu-%lu", ds_rplcore, (unsigned long) getpid(), - (unsigned long) pthread_self()); + "%s-%llu-%llu", ds_rplcore, (unsigned long long) getpid(), + (unsigned long long) pthread_self()); if ((fichier = fopen(nom, "w+")) == NULL) { @@ -142,9 +145,9 @@ rplcore(struct_processus *s_etat_process return; } - if ((*s_etat_processus).instruction_derniere_erreur != NULL) + if ((*s_etat_processus).instruction_derniere_erreur == NULL) { - if (fprintf(fichier, "// Error :\n%s [level %lu]\n\n", + if (fprintf(fichier, "// Error :\n%s [level %lld]\n\n", message_erreur, (*s_etat_processus).niveau_derniere_erreur) < 0) { free(message_erreur); @@ -156,7 +159,7 @@ rplcore(struct_processus *s_etat_process else if ((*s_etat_processus).instruction_derniere_erreur[0] == d_code_fin_chaine) { - if (fprintf(fichier, "// Error :\n%s [level %lu]\n\n", + if (fprintf(fichier, "// Error :\n%s [level %lld]\n\n", message_erreur, (*s_etat_processus).niveau_derniere_erreur) < 0) { free(message_erreur); @@ -165,7 +168,7 @@ rplcore(struct_processus *s_etat_process return; } } - else if (fprintf(fichier, "// Error :\n%s [%s at level %lu]\n\n", + else if (fprintf(fichier, "// Error :\n%s [%s at level %lld]\n\n", message_erreur, (*s_etat_processus).instruction_derniere_erreur, (*s_etat_processus).niveau_derniere_erreur) < 0) { @@ -195,7 +198,7 @@ rplcore(struct_processus *s_etat_process (*s_etat_processus).l_base_pile_processus; i = 0; - if (pthread_mutex_trylock(&((*s_etat_processus).mutex)) == 0) + if (pthread_mutex_trylock(&((*s_etat_processus).mutex_pile_processus)) == 0) { while(l_element_courant != NULL) { @@ -203,8 +206,8 @@ rplcore(struct_processus *s_etat_process (*(*l_element_courant).donnee).objet)).thread) .processus_detache == d_vrai) { - if (fprintf(fichier, "%ld: Process [%d]\n", - i++, (int) (*(*((struct_processus_fils *) + if (fprintf(fichier, "%d: Process [%d]\n", + (int) i++, (int) (*(*((struct_processus_fils *) (*(*l_element_courant).donnee).objet)).thread).pid) < 0) { (*s_etat_processus).erreur_systeme = d_es_erreur_fichier; @@ -213,10 +216,10 @@ rplcore(struct_processus *s_etat_process } else { - if (fprintf(fichier, "%ld: Thread [%llu] from [%llu]\n", + if (fprintf(fichier, "%ld: Thread [%llu] from [%d]\n", (int) i++, (unsigned long long) (*(*((struct_processus_fils *) (*(*l_element_courant).donnee).objet)).thread) - .tid, (unsigned long long) + .tid, (int) (*(*((struct_processus_fils *) (*(*l_element_courant) .donnee).objet)).thread).pid) < 0) { @@ -228,14 +231,14 @@ rplcore(struct_processus *s_etat_process l_element_courant = (*l_element_courant).suivant; } - if (fprintf(fichier, "%ld: Process [%d]\n\n", i, + if (fprintf(fichier, "%ld: Process [%d]\n\n", (int) i, (int) getpid()) < 0) { (*s_etat_processus).erreur_systeme = d_es_erreur_fichier; return; } - pthread_mutex_unlock(&((*s_etat_processus).mutex)); + pthread_mutex_unlock(&((*s_etat_processus).mutex_pile_processus)); } if (test_cfsf(s_etat_processus, 31) == d_vrai) @@ -481,7 +484,7 @@ rplcore(struct_processus *s_etat_process while(((*ptr_bis) != d_code_fin_chaine) && (fin_boucle == d_faux)) { - if (j == (long) (*s_etat_processus).position_courante) + if (j == (*s_etat_processus).position_courante) { if (fprintf(fichier, ">|<") < 0) { @@ -526,8 +529,8 @@ rplcore(struct_processus *s_etat_process } } - if ((i <= (long) (*s_etat_processus).position_courante) && - ((i + longueur_lignes) > (long) (*s_etat_processus) + if ((i <= (*s_etat_processus).position_courante) && + ((i + longueur_lignes) > (*s_etat_processus) .position_courante)) { if (fprintf(fichier, "\nError : ") < 0)