diff options
author | Juli Mallett <jmallett@FreeBSD.org> | 2002-04-07 02:29:56 +0000 |
---|---|---|
committer | Juli Mallett <jmallett@FreeBSD.org> | 2002-04-07 02:29:56 +0000 |
commit | ae17860040ea0538291e276edd13c51502091d55 (patch) | |
tree | 99efc7fb359e424bf60d108e3ee4b5d486296e9b /usr.bin/sed | |
parent | 856bef3c1713667a5ac7ba1dfc5452a516820080 (diff) | |
download | src-test2-ae17860040ea0538291e276edd13c51502091d55.tar.gz src-test2-ae17860040ea0538291e276edd13c51502091d55.zip |
Notes
Diffstat (limited to 'usr.bin/sed')
-rw-r--r-- | usr.bin/sed/process.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/usr.bin/sed/process.c b/usr.bin/sed/process.c index ff3cb1913889..a1e3ca72756c 100644 --- a/usr.bin/sed/process.c +++ b/usr.bin/sed/process.c @@ -136,7 +136,8 @@ redirect: case 'D': if (pd) goto new; - if ((p = memchr(ps, '\n', psl - 1)) == NULL) { + if (psl == 0 || + (p = memchr(ps, '\n', psl - 1)) == NULL) { pd = 1; goto new; } else { @@ -188,7 +189,8 @@ redirect: case 'P': if (pd) break; - if ((p = memchr(ps, '\n', psl - 1)) != NULL) { + if (psl != 0 && + (p = memchr(ps, '\n', psl - 1)) != NULL) { oldpsl = psl; psl = (p + 1) - ps; } @@ -240,7 +242,7 @@ redirect: HS = tspace; break; case 'y': - if (pd) + if (pd || psl == 0) break; for (p = ps, len = psl; --len; ++p) *p = cp->u.y[(unsigned char)*p]; |