about summary refs log tree commit diff
path: root/libio
diff options
context:
space:
mode:
Diffstat (limited to 'libio')
-rw-r--r--libio/fileops.c10
-rw-r--r--libio/libioP.h4
2 files changed, 8 insertions, 6 deletions
diff --git a/libio/fileops.c b/libio/fileops.c
index 596d97078a..5a5f9d9db2 100644
--- a/libio/fileops.c
+++ b/libio/fileops.c
@@ -613,10 +613,12 @@ _IO_file_seekoff (fp, offset, dir, mode)
   _IO_unsave_markers (fp);
   result = _IO_SYSSEEK (fp, offset, dir);
   if (result != EOF)
-    _IO_mask_flags (fp, 0, _IO_EOF_SEEN);
-  fp->_offset = result;
-  _IO_setg (fp, fp->_IO_buf_base, fp->_IO_buf_base, fp->_IO_buf_base);
-  _IO_setp (fp, fp->_IO_buf_base, fp->_IO_buf_base);
+    {
+      _IO_mask_flags (fp, 0, _IO_EOF_SEEN);
+      fp->_offset = result;
+      _IO_setg (fp, fp->_IO_buf_base, fp->_IO_buf_base, fp->_IO_buf_base);
+      _IO_setp (fp, fp->_IO_buf_base, fp->_IO_buf_base);
+    }
   return result;
 }
 
diff --git a/libio/libioP.h b/libio/libioP.h
index 84bac2c719..4891294726 100644
--- a/libio/libioP.h
+++ b/libio/libioP.h
@@ -555,12 +555,12 @@ extern int _IO_vscanf __P ((const char *, _IO_va_list));
 # define FILEBUF_LITERAL(CHAIN, FLAGS, FD) \
        { _IO_MAGIC+_IO_LINKED+_IO_IS_FILEBUF+FLAGS, \
          0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, CHAIN, FD, \
-	   0, 0, 0, 0, { 0 }, &_IO_stdfile_##FD##_lock }
+	   0, _IO_pos_BAD, 0, 0, { 0 }, &_IO_stdfile_##FD##_lock }
 #else
 /* check following! */
 # define FILEBUF_LITERAL(CHAIN, FLAGS, FD) \
        { _IO_MAGIC+_IO_LINKED+_IO_IS_FILEBUF+FLAGS, \
-	   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, CHAIN, FD }
+	   0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, CHAIN, FD, 0, _IO_pos_BAD }
 #endif
 
 /* VTABLE_LABEL defines NAME as of the CLASS class.