diff -pu2r ash-20010827-1/miscbltin.c ash-20010827-1.deo/miscbltin.c --- ash-20010827-1/miscbltin.c Tue Apr 24 00:38:31 2001 +++ ash-20010827-1.deo/miscbltin.c Fri Oct 26 16:38:37 2001 @@ -77,6 +77,6 @@ extern char **argptr; /* argument list /* - * The read builtin. The -e option causes backslashes to escape the - * following character. + * The read builtin. The -r option causes backslashes to be treated like + * ordinary characters. * * This uses unbuffered input, which may be avoidable in some cases. @@ -91,5 +91,5 @@ readcmd(argc, argv) int backslash; char c; - int eflag; + int rflag; char *prompt; char *ifs; @@ -109,5 +109,5 @@ readcmd(argc, argv) #endif - eflag = 0; + rflag = 0; prompt = NULL; tv.tv_sec = -1; @@ -116,5 +116,5 @@ readcmd(argc, argv) nextopt(""); #else - while ((i = nextopt("ep:t:")) != '\0') { + while ((i = nextopt("erp:t:")) != '\0') { switch(i) { case 'p': @@ -122,5 +122,7 @@ readcmd(argc, argv) break; case 'e': - eflag = 1; + break; + case 'r': + rflag = 1; break; case 't': @@ -198,5 +200,4 @@ readcmd(argc, argv) if (c == '\0') continue; -#ifndef SMALL if (backslash) { backslash = 0; @@ -205,9 +206,8 @@ readcmd(argc, argv) continue; } - if (eflag && c == '\\') { + if (!rflag && c == '\\') { backslash++; continue; } -#endif if (c == '\n') break;