--- rpl/src/instructions_a4.c 2010/02/10 10:14:20 1.3 +++ rpl/src/instructions_a4.c 2012/01/05 10:19:00 1.32 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.0.11 - Copyright (C) 1989-2010 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.5 + Copyright (C) 1989-2012 Dr. BERTRAND Joël This file is part of RPL/2. @@ -20,7 +20,7 @@ */ -#include "rpl.conv.h" +#include "rpl-conv.h" /* @@ -556,7 +556,7 @@ instruction_asr(struct_processus *s_etat void instruction_append(struct_processus *s_etat_processus) { - file *descripteur; + struct_descripteur_fichier *descripteur; struct_objet *s_objet_argument; @@ -609,11 +609,21 @@ instruction_append(struct_processus *s_e return; } - if (fseek(descripteur, (long) 0, SEEK_END) != 0) + if ((*descripteur).type == 'C') + { + if (fseek((*descripteur).descripteur_c, (long) 0, SEEK_END) != 0) + { + liberation(s_etat_processus, s_objet_argument); + + (*s_etat_processus).erreur_systeme = d_es_erreur_fichier; + return; + } + } + else { liberation(s_etat_processus, s_objet_argument); - (*s_etat_processus).erreur_systeme = d_es_erreur_fichier; + (*s_etat_processus).erreur_execution = d_ex_erreur_type_fichier; return; } } @@ -767,18 +777,26 @@ instruction_axes(struct_processus *s_eta if (presence_type == d_faux) { - if ((tampon = malloc(5 * sizeof(unsigned char))) == NULL) - { - (*s_etat_processus).erreur_systeme = d_es_allocation_memoire; - return; - } - if ((*s_etat_processus).systeme_axes == 0) { + if ((tampon = malloc(5 * sizeof(unsigned char))) == NULL) + { + (*s_etat_processus).erreur_systeme = + d_es_allocation_memoire; + return; + } + strcpy(tampon, "MAIN"); } else { + if ((tampon = malloc(10 * sizeof(unsigned char))) == NULL) + { + (*s_etat_processus).erreur_systeme = + d_es_allocation_memoire; + return; + } + strcpy(tampon, "AUXILIARY"); } }