diff options
author | Tobias Klauser <tklauser@distanz.ch> | 2007-11-11 21:17:57 +0100 |
---|---|---|
committer | Tobias Klauser <tklauser@xenon.tklauser.home> | 2007-11-11 21:17:57 +0100 |
commit | a4d7f34d0210344d2e25e5af1c2e61057422521d (patch) | |
tree | ec7dcec92fcee2bce373ce5bcc5c4be3704c3b4a | |
parent | 21cddfba5f53ed0ad9d8f14bc1555c57cad9790e (diff) |
Revert "inotail.c: Decrement n_units before calling tail_pipe_from_begin"pipe
This reverts commit 21cddfba5f53ed0ad9d8f14bc1555c57cad9790e.
Makes inotail -n +0 work again. Sometimes reducing code leads to unrecognised
errors ;-)
-rw-r--r-- | inotail.c | 7 |
1 files changed, 5 insertions, 2 deletions
@@ -244,6 +244,9 @@ static int tail_pipe_from_begin(struct file_struct *f, unsigned long n_units, co int bytes_read = 0; char buf[BUFSIZ]; + if (n_units) + n_units--; + while (n_units > 0) { if ((bytes_read = read(f->fd, buf, BUFSIZ)) <= 0) { if (bytes_read < 0 && (errno == EINTR || errno == EAGAIN)) @@ -292,7 +295,7 @@ static int tail_pipe_lines(struct file_struct *f, unsigned long n_lines) const char *p; if (from_begin) - return tail_pipe_from_begin(f, n_lines - 1, M_LINES); + return tail_pipe_from_begin(f, n_lines, M_LINES); if (n_lines == 0) return 0; @@ -400,7 +403,7 @@ static int tail_pipe_bytes(struct file_struct *f, unsigned long n_bytes) unsigned long i = 0; /* Index into buffer */ if (from_begin) - return tail_pipe_from_begin(f, n_bytes - 1, M_BYTES); + return tail_pipe_from_begin(f, n_bytes, M_BYTES); /* XXX: Needed? */ if (n_bytes == 0) |