--- rpl/src/rpl.c 2010/07/14 14:19:40 1.33 +++ rpl/src/rpl.c 2010/08/06 15:26:51 1.35 @@ -21,8 +21,11 @@ #define MAIN_RPL -#include "rpl.conv.h" +#include "rpl-conv.h" +#ifdef OS2 + unsigned char *chemin_semaphores_SysV; +#endif /* ================================================================================ @@ -33,8 +36,8 @@ int rplinit(int argc, char *argv[], unsigned char ***resultats, char *rpl_home) { -# include "copyright.conv.h" -# include "licence.conv.h" +# include "copyright-conv.h" +# include "licence-conv.h" file *f_source; @@ -327,7 +330,7 @@ rplinit(int argc, char *argv[], unsigned // Initialisation d'une pile de signal pour récupérer les // débordement de pile -# ifndef Cygwin +# if !defined(Cygwin) if (((*s_etat_processus).pile_signal.ss_sp = malloc((*s_etat_processus).pile_signal.ss_size = SIGSTKSZ)) == NULL) @@ -583,6 +586,10 @@ rplinit(int argc, char *argv[], unsigned (*s_etat_processus).chemin_fichiers_temporaires = recherche_chemin_fichiers_temporaires(s_etat_processus); +# ifdef OS2 + chemin_semaphores_SysV = (*s_etat_processus).chemin_fichiers_temporaires; +# endif + erreur = d_absence_erreur; core = d_faux; mode_interactif = d_faux; @@ -1871,6 +1878,8 @@ rplinit(int argc, char *argv[], unsigned } (*s_etat_processus).at_exit = NULL; + (*s_etat_processus).at_poke = NULL; + (*s_etat_processus).traitement_at_poke = 'N'; (*s_etat_processus).pointeurs_caracteres = NULL; (*s_etat_processus).arbre_instructions = NULL; @@ -2663,11 +2672,11 @@ rplinit(int argc, char *argv[], unsigned (*s_etat_processus).at_exit, 'E'); } } - - liberation(s_etat_processus, - (*s_etat_processus).at_exit); } + liberation(s_etat_processus, (*s_etat_processus).at_exit); + liberation(s_etat_processus, (*s_etat_processus).at_poke); + if ((*s_etat_processus).generateur_aleatoire != NULL) { liberation_generateur_aleatoire(s_etat_processus);