summaryrefslogtreecommitdiff
path: root/coreutils
diff options
context:
space:
mode:
authorDenys Vlasenko2011-09-17 00:12:24 +0200
committerDenys Vlasenko2011-09-17 00:12:24 +0200
commit0851d125c33d65cc8a0655758f2928960077c20c (patch)
tree3279b26a562443357d72afd0036347921af123be /coreutils
parent6d2d652cd33679625f5d211d739fcd34826b3a9b (diff)
downloadbusybox-0851d125c33d65cc8a0655758f2928960077c20c.zip
busybox-0851d125c33d65cc8a0655758f2928960077c20c.tar.gz
tail: fix -c +N. Closes 4111
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'coreutils')
-rw-r--r--coreutils/tail.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/coreutils/tail.c b/coreutils/tail.c
index 454c259..43cecbd 100644
--- a/coreutils/tail.c
+++ b/coreutils/tail.c
@@ -203,7 +203,7 @@ int tail_main(int argc, char **argv)
int fd = fds[i];
if (ENABLE_FEATURE_FANCY_TAIL && fd < 0)
- continue; /* may happen with -E */
+ continue; /* may happen with -F */
if (nfiles > header_threshhold) {
tail_xprint_header(fmt, argv[i]);
@@ -252,14 +252,14 @@ int tail_main(int argc, char **argv)
* Used only by +N code ("start from Nth", 1-based): */
seen = 1;
newlines_seen = 0;
- while ((nread = tail_read(fd, buf, tailbufsize-taillen)) > 0) {
+ while ((nread = tail_read(fd, buf, tailbufsize - taillen)) > 0) {
if (G.from_top) {
int nwrite = nread;
if (seen < count) {
/* We need to skip a few more bytes/lines */
if (COUNT_BYTES) {
nwrite -= (count - seen);
- seen = count;
+ seen += nread;
} else {
char *s = buf;
do {