X-Git-Url: https://git.subgeniuskitty.com/unix-history/.git/blobdiff_plain/f6227721b184b52f7d1ec0b62372d978d7d0c570..71fe9140007191d11cce279563b4608d85d45424:/usr/src/old/sh/word.c diff --git a/usr/src/old/sh/word.c b/usr/src/old/sh/word.c index 7a295e7b3b..b9d1605060 100644 --- a/usr/src/old/sh/word.c +++ b/usr/src/old/sh/word.c @@ -1,5 +1,5 @@ #ifndef lint -static char sccsid[] = "@(#)word.c 4.3 %G%"; +static char sccsid[] = "@(#)word.c 4.7 %G%"; #endif # @@ -22,13 +22,15 @@ word() { REG CHAR c, d; REG CHAR *argp=locstak()+BYTESPERWORD; + REG ARGPTR ap; INT alpha=1; wdnum=0; wdset=0; WHILE (c=nextc(0), space(c)) DONE - IF c=='#' + IF c=='#' ANDF ((flags&prompt)==0 ORF ((flags&ttyflg) ANDF + standin->fstak!=0)) THEN WHILE (c=readc()) ANDF c!=NL DONE FI @@ -49,15 +51,15 @@ word() FI FI PER (c=nextc(0), !eofmeta(c)) DONE - argp=endstak(argp); - IF !letter(argp->argval[0]) THEN wdset=0 FI + ap=(ARGPTR)endstak(argp); + IF !letter(ap->argval[0]) THEN wdset=0 FI peekc=c|MARK; - IF argp->argval[1]==0 ANDF (d=argp->argval[0], digit(d)) ANDF (c=='>' ORF c=='<') + IF ap->argval[1]==0 ANDF (d=ap->argval[0], digit(d)) ANDF (c=='>' ORF c=='<') THEN word(); wdnum=d-'0'; ELSE /*check for reserved words*/ - IF reserv==FALSE ORF (wdval=syslook(argp->argval,reserved))==0 - THEN wdarg=argp; wdval=0; + IF reserv==FALSE ORF (wdval=syslook(ap->argval,reserved))==0 + THEN wdarg=ap; wdval=0; FI FI