--- rpl/src/instructions_s2.c 2010/02/27 12:39:27 1.5 +++ rpl/src/instructions_s2.c 2010/03/04 10:09:31 1.6 @@ -1092,12 +1092,6 @@ instruction_str_fleche(struct_processus if ((*s_objet).type == CHN) { - position_courante = (*s_etat_processus).position_courante; - registre_definitions_chainees = (*s_etat_processus) - .definitions_chainees; - registre_instruction_courante = (*s_etat_processus) - .instruction_courante; - // Comptage des caractères à protéger. drapeau45 = test_cfsf(s_etat_processus, 45); @@ -1233,6 +1227,12 @@ instruction_str_fleche(struct_processus (*ptr_e) = d_code_fin_chaine; + position_courante = (*s_etat_processus).position_courante; + registre_definitions_chainees = (*s_etat_processus) + .definitions_chainees; + registre_instruction_courante = (*s_etat_processus) + .instruction_courante; + (*s_etat_processus).position_courante = 0; (*s_etat_processus).definitions_chainees = chaine_convertie; free(tampon); @@ -1330,6 +1330,7 @@ instruction_str_fleche(struct_processus } else { +printf("<1>\n"); liberation(s_etat_processus, s_objet); free((*s_etat_processus).definitions_chainees);