--- rpl/src/instructions_t2.c 2010/01/26 15:22:45 1.1 +++ rpl/src/instructions_t2.c 2010/07/14 14:19:39 1.12 @@ -1,6 +1,6 @@ /* ================================================================================ - RPL/2 (R) version 4.0.9 + RPL/2 (R) version 4.0.18 Copyright (C) 1989-2010 Dr. BERTRAND Joël This file is part of RPL/2. @@ -1914,17 +1914,15 @@ instruction_target(struct_processus *s_e .adresse_distante); if (((*((struct_socket *) (*s_objet_argument_1).objet)) - .adresse_distante = malloc((strlen((unsigned char *) - (*s_objet_argument_2).objet) + 1) * sizeof(unsigned char))) - == NULL) + .adresse_distante = transliteration(s_etat_processus, + (unsigned char *) (*s_objet_argument_2).objet, + d_locale, "UTF-8")) == NULL) { - (*s_etat_processus).erreur_systeme = d_es_allocation_memoire; + liberation(s_etat_processus, s_objet_argument_1); + liberation(s_etat_processus, s_objet_argument_2); + return; } - - strcpy((*((struct_socket *) (*s_objet_argument_1).objet)) - .adresse_distante, (unsigned char *) - (*s_objet_argument_2).objet); } else if ((*s_objet_argument_2).type == LST) {