version 1.55, 2015/01/05 13:12:41
|
version 1.80, 2025/04/15 10:17:56
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.19 |
RPL/2 (R) version 4.1.36 |
Copyright (C) 1989-2015 Dr. BERTRAND Joël |
Copyright (C) 1989-2025 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 582 formateur_elementaire_tex(struct_process
|
Line 582 formateur_elementaire_tex(struct_process
|
|
|
if ((*s_etat_processus).instruction_valide == 'Y') |
if ((*s_etat_processus).instruction_valide == 'Y') |
{ |
{ |
if ((instruction_majuscule = conversion_majuscule( |
if ((instruction_majuscule = conversion_majuscule(s_etat_processus, |
(*s_etat_processus).instruction_courante)) == NULL) |
(*s_etat_processus).instruction_courante)) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
Line 1562 formateur_elementaire_tex(struct_process
|
Line 1562 formateur_elementaire_tex(struct_process
|
|
|
if (niveau == 0) |
if (niveau == 0) |
{ |
{ |
sprintf((unsigned char *) (*s_sous_objet_1) |
memmove(((unsigned char *) (*s_sous_objet_1) |
.objet, "%s", &(((unsigned char *) |
.objet), ((unsigned char *) |
(*s_sous_objet_1).objet)[1])); |
(*s_sous_objet_1).objet) + 1, |
((unsigned char *) (*s_sous_objet_1).objet) |
strlen((unsigned char *) |
[strlen((unsigned char *) |
(*s_sous_objet_1).objet)); |
(*s_sous_objet_1).objet) - 1] = |
|
d_code_fin_chaine; |
|
} |
} |
} |
} |
|
|
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_1).objet; |
(*s_sous_objet_1).objet; |
conversion_element_tex(&chaine_parametre, "^"); |
conversion_element_tex(s_etat_processus, |
|
&chaine_parametre, "^"); |
|
|
if ((*s_sous_objet_1).objet == NULL) |
if ((*s_sous_objet_1).objet == NULL) |
{ |
{ |
Line 1602 formateur_elementaire_tex(struct_process
|
Line 1601 formateur_elementaire_tex(struct_process
|
{ |
{ |
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_1).objet; |
(*s_sous_objet_1).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
(*((struct_fonction *) |
&chaine_parametre, (*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
|
|
Line 1616 formateur_elementaire_tex(struct_process
|
Line 1615 formateur_elementaire_tex(struct_process
|
|
|
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_2).objet; |
(*s_sous_objet_2).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
(*((struct_fonction *) |
&chaine_parametre, (*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
|
|
Line 1700 formateur_elementaire_tex(struct_process
|
Line 1699 formateur_elementaire_tex(struct_process
|
{ |
{ |
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_1).objet; |
(*s_sous_objet_1).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
|
&chaine_parametre, |
(*((struct_fonction *) |
(*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
Line 1714 formateur_elementaire_tex(struct_process
|
Line 1714 formateur_elementaire_tex(struct_process
|
|
|
chaine_parametre = (unsigned char *) |
chaine_parametre = (unsigned char *) |
(*s_sous_objet_2).objet; |
(*s_sous_objet_2).objet; |
conversion_element_tex(&chaine_parametre, |
conversion_element_tex(s_etat_processus, |
|
&chaine_parametre, |
(*((struct_fonction *) |
(*((struct_fonction *) |
(*(*l_element_courant).donnee).objet)) |
(*(*l_element_courant).donnee).objet)) |
.nom_fonction); |
.nom_fonction); |
Line 2052 formateur_elementaire_tex(struct_process
|
Line 2053 formateur_elementaire_tex(struct_process
|
|
|
free(chaine_sauvegarde); |
free(chaine_sauvegarde); |
|
|
chaine_majuscule = conversion_majuscule((*((struct_nom *) |
chaine_majuscule = conversion_majuscule(s_etat_processus, |
(*(*l_element_courant).donnee).objet)).nom); |
(*((struct_nom *) (*(*l_element_courant).donnee) |
|
.objet)).nom); |
|
|
if (strcmp(chaine_majuscule, "PI") == 0) |
if (strcmp(chaine_majuscule, "PI") == 0) |
{ |
{ |
Line 2189 correction_formateur_tex(struct_processu
|
Line 2191 correction_formateur_tex(struct_processu
|
*/ |
*/ |
|
|
case '#' : |
case '#' : |
|
# if __GNUC__ >= 7 |
|
__attribute__ ((fallthrough)); |
|
# endif |
|
|
case '_' : |
case '_' : |
{ |
{ |
if (mode_mathematique == d_vrai) |
if (mode_mathematique == d_vrai) |
{ |
{ |
break; |
break; |
} |
} |
|
# if __GNUC__ >= 7 |
|
__attribute__ ((fallthrough)); |
|
# endif |
} |
} |
|
|
case '%' : |
case '%' : |
|
# if __GNUC__ >= 7 |
|
__attribute__ ((fallthrough)); |
|
# endif |
case '&' : |
case '&' : |
{ |
{ |
if ((tampon = (unsigned char *) malloc((strlen((*ligne)) + 2) * |
if ((tampon = (unsigned char *) malloc((strlen((*ligne)) + 2) * |
Line 2335 impression_tex(struct_processus *s_etat_
|
Line 2347 impression_tex(struct_processus *s_etat_
|
|
|
if ((*s_etat_processus).rpl_home == NULL) |
if ((*s_etat_processus).rpl_home == NULL) |
{ |
{ |
if (alsprintf(&commande, ds_tex_commande, |
if (alsprintf(s_etat_processus, &commande, ds_tex_commande, |
d_exec_path, d_exec_path, d_exec_path, |
d_exec_path, d_exec_path, d_exec_path, |
(*s_etat_processus).nom_fichier_impression, |
(*s_etat_processus).nom_fichier_impression, |
d_exec_path, d_exec_path, |
d_exec_path, d_exec_path, |
Line 2347 impression_tex(struct_processus *s_etat_
|
Line 2359 impression_tex(struct_processus *s_etat_
|
return; |
return; |
} |
} |
|
|
if (alsprintf(&executable_candidat, "%s/bin/rpliconv", |
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rpliconv", |
d_exec_path) < 0) |
d_exec_path) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
Line 2363 impression_tex(struct_processus *s_etat_
|
Line 2375 impression_tex(struct_processus *s_etat_
|
|
|
free(executable_candidat); |
free(executable_candidat); |
|
|
if (alsprintf(&executable_candidat, "%s/bin/rplfile", |
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rplfile", |
d_exec_path) < 0) |
d_exec_path) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
Line 2381 impression_tex(struct_processus *s_etat_
|
Line 2393 impression_tex(struct_processus *s_etat_
|
} |
} |
else |
else |
{ |
{ |
if (alsprintf(&commande, ds_tex_commande, |
if (alsprintf(s_etat_processus, &commande, ds_tex_commande, |
(*s_etat_processus).rpl_home, |
(*s_etat_processus).rpl_home, |
(*s_etat_processus).rpl_home, |
(*s_etat_processus).rpl_home, |
(*s_etat_processus).rpl_home, |
(*s_etat_processus).rpl_home, |
Line 2396 impression_tex(struct_processus *s_etat_
|
Line 2408 impression_tex(struct_processus *s_etat_
|
return; |
return; |
} |
} |
|
|
if (alsprintf(&executable_candidat, "%s/bin/rpliconv", |
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rpliconv", |
(*s_etat_processus).rpl_home) < 0) |
(*s_etat_processus).rpl_home) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
Line 2412 impression_tex(struct_processus *s_etat_
|
Line 2424 impression_tex(struct_processus *s_etat_
|
|
|
free(executable_candidat); |
free(executable_candidat); |
|
|
if (alsprintf(&executable_candidat, "%s/bin/rplfile", |
if (alsprintf(s_etat_processus, &executable_candidat, "%s/bin/rplfile", |
(*s_etat_processus).rpl_home) < 0) |
(*s_etat_processus).rpl_home) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
Line 2438 impression_tex(struct_processus *s_etat_
|
Line 2450 impression_tex(struct_processus *s_etat_
|
{ |
{ |
free(commande); |
free(commande); |
|
|
if (alsprintf(&commande, ds_tex_postscript, nom_fichier_ps) < 0) |
if (alsprintf(s_etat_processus, &commande, ds_tex_postscript, |
|
nom_fichier_ps) < 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
Line 2539 impression_tex(struct_processus *s_etat_
|
Line 2552 impression_tex(struct_processus *s_etat_
|
*/ |
*/ |
|
|
void |
void |
conversion_element_tex(unsigned char **element, unsigned char *fonction) |
conversion_element_tex(struct_processus *s_etat_processus, |
|
unsigned char **element, unsigned char *fonction) |
{ |
{ |
unsigned char *chaine; |
unsigned char *chaine; |
unsigned char *element_courant; |
unsigned char *element_courant; |
Line 2562 conversion_element_tex(unsigned char **e
|
Line 2576 conversion_element_tex(unsigned char **e
|
{ |
{ |
if (niveau == 0) |
if (niveau == 0) |
{ |
{ |
extrait = extraction_chaine((*element), debut_fonction, i - 1); |
extrait = extraction_chaine(s_etat_processus, |
|
(*element), debut_fonction, i - 1); |
|
|
if (strcmp(extrait, fonction) != 0) |
if (strcmp(extrait, fonction) != 0) |
{ |
{ |