diff options
| author | Gregory Neil Shapiro <gshapiro@FreeBSD.org> | 2001-05-18 18:35:34 +0000 |
|---|---|---|
| committer | Gregory Neil Shapiro <gshapiro@FreeBSD.org> | 2001-05-18 18:35:34 +0000 |
| commit | 4ba4d3873ad568b926b2ac65867c53983feea39d (patch) | |
| tree | b42b80db99dcaeed5490022bdd65e0244fbce2f5 /usr.bin/m4 | |
| parent | d3ebe37cd0482cc26f8a8a7b31efd90cdef05128 (diff) | |
Notes
Diffstat (limited to 'usr.bin/m4')
| -rw-r--r-- | usr.bin/m4/eval.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/usr.bin/m4/eval.c b/usr.bin/m4/eval.c index e424815467e6..d2ac3c892195 100644 --- a/usr.bin/m4/eval.c +++ b/usr.bin/m4/eval.c @@ -717,22 +717,22 @@ register int argc; register unsigned char *ap, *fc, *k; register int nc; + ap = argv[2]; /* target string */ +#ifdef EXPR + fc = ap + expr(argv[3]); /* first char */ +#else + fc = ap + atoi(argv[3]); /* first char */ +#endif if (argc < 5) - nc = MAXTOK; + nc = strlen(fc); else #ifdef EXPR nc = expr(argv[4]); #else nc = atoi(argv[4]); #endif - ap = argv[2]; /* target string */ -#ifdef EXPR - fc = ap + expr(argv[3]); /* first char */ -#else - fc = ap + atoi(argv[3]); /* first char */ -#endif if (fc >= ap && fc < ap + strlen(ap)) - for (k = fc + min(nc, strlen(fc)) - 1; k >= fc; k--) + for (k = fc + nc - 1; k >= fc; k--) putback(*k); } |
