about summary refs log tree commit diff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-04-02 13:55:54 -0400
committerRich Felker <dalias@aerifal.cx>2011-04-02 13:55:54 -0400
commit8de03e1a90e60f62806c488cfa4985f99e869f87 (patch)
treee139eb856b577b4e8f997e02dbcdf0de245d32fc
parent9a909fcd915c65628931dcf6e7b34f261e39e3a3 (diff)
downloadmusl-8de03e1a90e60f62806c488cfa4985f99e869f87.tar.gz
musl-8de03e1a90e60f62806c488cfa4985f99e869f87.tar.xz
musl-8de03e1a90e60f62806c488cfa4985f99e869f87.zip
don't disable seeking after first seek failure
this could cause problems if the application uses dup2(fd,fileno(f))
to redirect, and the old fd was not seekable but the new fd is.
-rw-r--r--src/stdio/__stdio_seek.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/src/stdio/__stdio_seek.c b/src/stdio/__stdio_seek.c
index 35ae788c..13e06a66 100644
--- a/src/stdio/__stdio_seek.c
+++ b/src/stdio/__stdio_seek.c
@@ -1,11 +1,5 @@
 #include "stdio_impl.h"
 
-static off_t retneg1(FILE *f, off_t off, int whence)
-{
-	errno = ESPIPE;
-	return -1;
-}
-
 off_t __stdio_seek(FILE *f, off_t off, int whence)
 {
 	off_t ret;
@@ -15,7 +9,5 @@ off_t __stdio_seek(FILE *f, off_t off, int whence)
 #else
 	ret = syscall(SYS_lseek, f->fd, off, whence);
 #endif
-	/* Detect unseekable files and optimize future failures out */
-	if (ret < 0 && errno == ESPIPE) f->seek = retneg1;
 	return ret;
 }