version 1.1.1.1, 2010/01/26 15:22:44
|
version 1.3, 2010/02/08 19:26:32
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.0.9 |
RPL/2 (R) version 4.0.10 |
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 2274 impression_tex(struct_processus *s_etat_
|
Line 2274 impression_tex(struct_processus *s_etat_
|
return; |
return; |
} |
} |
|
|
if ((commande = (unsigned char *) malloc(((strlen(ds_tex_commande) - 15) |
if (alsprintf(&commande, ds_tex_commande, |
+ (2 * strlen((*s_etat_processus).chemin_fichiers_temporaires)) |
d_exec_path, d_exec_path, d_exec_path, |
+ strlen((*s_etat_processus).nom_fichier_impression) |
(*s_etat_processus).nom_fichier_impression, |
+ (2 * strlen(nom_fichier_tex)) |
(*s_etat_processus).nom_fichier_impression, nom_fichier_tex, |
+ (3 * strlen(d_exec_path)) |
(*s_etat_processus).chemin_fichiers_temporaires, |
+ strlen(nom_fichier_dvi) + strlen(nom_fichier_ps)) |
nom_fichier_tex, nom_fichier_dvi, nom_fichier_ps) < 0) |
* sizeof(unsigned char))) == NULL) |
|
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
} |
} |
|
|
sprintf(commande, ds_tex_commande, d_exec_path, d_exec_path, d_exec_path, |
|
(*s_etat_processus).nom_fichier_impression, |
|
(*s_etat_processus).nom_fichier_impression, nom_fichier_tex, |
|
(*s_etat_processus).chemin_fichiers_temporaires, |
|
nom_fichier_tex, nom_fichier_dvi, nom_fichier_ps); |
|
|
|
if (system(commande) != 0) |
if (system(commande) != 0) |
{ |
{ |
(*s_etat_processus).erreur_execution = d_ex_erreur_impression; |
(*s_etat_processus).erreur_execution = d_ex_erreur_impression; |
Line 2301 impression_tex(struct_processus *s_etat_
|
Line 2294 impression_tex(struct_processus *s_etat_
|
{ |
{ |
free(commande); |
free(commande); |
|
|
if ((commande = (unsigned char *) malloc((strlen(ds_tex_postscript) |
if (alsprintf(&commande, ds_tex_postscript, nom_fichier_ps) < 0) |
+ strlen(nom_fichier_ps) - 1) * sizeof(unsigned char))) == NULL) |
|
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
} |
} |
|
|
sprintf(commande, ds_tex_postscript, nom_fichier_ps); |
|
|
|
if (system(commande) != 0) |
if (system(commande) != 0) |
{ |
{ |
(*s_etat_processus).erreur_execution = d_ex_erreur_impression; |
(*s_etat_processus).erreur_execution = d_ex_erreur_impression; |
Line 2336 impression_tex(struct_processus *s_etat_
|
Line 2326 impression_tex(struct_processus *s_etat_
|
|
|
if (destruction_fichier(nom_fichier_tex) == d_erreur) |
if (destruction_fichier(nom_fichier_tex) == d_erreur) |
{ |
{ |
|
free(nom_fichier_aux); |
|
free(nom_fichier_log); |
|
free(nom_fichier_dvi); |
|
free(nom_fichier_tex); |
|
free(nom_fichier_ps); |
|
|
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (destruction_fichier(nom_fichier_aux) == d_erreur) |
if (destruction_fichier(nom_fichier_aux) == d_erreur) |
{ |
{ |
|
free(nom_fichier_aux); |
|
free(nom_fichier_log); |
|
free(nom_fichier_dvi); |
|
free(nom_fichier_tex); |
|
free(nom_fichier_ps); |
|
|
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (destruction_fichier(nom_fichier_dvi) == d_erreur) |
if (destruction_fichier(nom_fichier_dvi) == d_erreur) |
{ |
{ |
|
free(nom_fichier_aux); |
|
free(nom_fichier_log); |
|
free(nom_fichier_dvi); |
|
free(nom_fichier_tex); |
|
free(nom_fichier_ps); |
|
|
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |
|
|
if (destruction_fichier(nom_fichier_log) == d_erreur) |
if (destruction_fichier(nom_fichier_log) == d_erreur) |
{ |
{ |
|
free(nom_fichier_aux); |
|
free(nom_fichier_log); |
|
free(nom_fichier_dvi); |
|
free(nom_fichier_tex); |
|
free(nom_fichier_ps); |
|
|
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
(*s_etat_processus).erreur_systeme = d_es_erreur_fichier; |
return; |
return; |
} |
} |