--- rpl/src/instructions_t2.c 2010/03/04 10:17:53 1.4 +++ rpl/src/instructions_t2.c 2010/03/06 18:29:07 1.5 @@ -1819,6 +1819,8 @@ instruction_target(struct_processus *s_e struct_objet *s_objet_argument_1; struct_objet *s_objet_argument_2; + unsigned char *nom; + unsigned long i; unsigned long nombre_elements; @@ -1914,17 +1916,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) {