From 1c835e370ff58e58b75c12a9e743a2bb33d84cb0 Mon Sep 17 00:00:00 2001 From: ftrvxmtrx Date: Thu, 8 May 2014 12:33:24 +0200 Subject: [PATCH] tail: seek to EOF to check if seekable. fixes tail on /proc files --- sys/src/cmd/tail.c | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/sys/src/cmd/tail.c b/sys/src/cmd/tail.c index 5f328af69..572224749 100644 --- a/sys/src/cmd/tail.c +++ b/sys/src/cmd/tail.c @@ -365,17 +365,8 @@ usage(void) exits("usage"); } -/* return true if seeks work and if the file is > 0 length. - * this will eventually bite me in the ass if seeking a file - * is not conservative. - presotto - */ static int isseekable(int fd) -{ - vlong m; - - m = seek(fd, 0, 1); - if(m < 0) - return 0; - return 1; +{ + return seek(fd, 0, 2) > 0 && seek(fd, 0, 0) == 0; }