=================================================================== RCS file: /home/cvs/OpenXM_contrib2/asir2000/parse/lex.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -p -r1.12 -r1.13 --- OpenXM_contrib2/asir2000/parse/lex.c 2000/12/22 10:03:32 1.12 +++ OpenXM_contrib2/asir2000/parse/lex.c 2000/12/26 05:17:47 1.13 @@ -45,7 +45,7 @@ * DEVELOPER SHALL HAVE NO LIABILITY IN CONNECTION WITH THE USE, * PERFORMANCE OR NON-PERFORMANCE OF THE SOFTWARE. * - * $OpenXM: OpenXM_contrib2/asir2000/parse/lex.c,v 1.11 2000/12/18 01:28:27 noro Exp $ + * $OpenXM: OpenXM_contrib2/asir2000/parse/lex.c,v 1.12 2000/12/22 10:03:32 saito Exp $ */ #include #include "ca.h" @@ -523,7 +523,12 @@ FILE *fp; int c; if ( fp ) { - c = getc(fp); +#if FEP + if ( do_fep && isatty(fileno(fp)) ) + c = readline_getc(); + else +#endif + c = getc(fp); #if defined(VISUAL) if ( recv_intr ) { #include @@ -559,7 +564,12 @@ FILE *fp; if ( fp ) { if ( asir_infile->encoded ) c = (int)encrypt_char((unsigned char)c); - ungetc(c,fp); +#if FEP + if ( do_fep && isatty(fileno(fp)) ) + readline_ungetc(); + else +#endif + ungetc(c,fp); } else *--parse_strp = c; } @@ -568,25 +578,6 @@ static int Getc() { int c; if ( main_parser ) { -#if FEP - if ( do_fep && isatty(fileno(asir_infile->fp)) ) - while ( 1 ) { - if ((c = readline_getc()) == EOF) - if ( NEXT(asir_infile) ) { - closecurrentinput(); - c = Getc(); - break; - } else if ( read_exec_file || do_file ) - asir_terminate(1); - else { - if ( asir_infile->fp ) - clearerr(asir_infile->fp); - } - else - break; - } - else -#endif while ( 1 ) { if ((c = Egetc(asir_infile->fp)) == EOF) if ( NEXT(asir_infile) ) { @@ -615,11 +606,6 @@ static int Getc() { static void Ungetc(c) { if ( main_parser ) { -#if FEP - if ( do_fep && isatty(fileno(asir_infile->fp)) ) - readline_ungetc(); - else -#endif Eungetc(c,asir_infile->fp); if ( echoback ) fputc('',asir_out);