about summary refs log tree commit diff
path: root/libio/oldiofgetpos64.c
diff options
context:
space:
mode:
Diffstat (limited to 'libio/oldiofgetpos64.c')
-rw-r--r--libio/oldiofgetpos64.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libio/oldiofgetpos64.c b/libio/oldiofgetpos64.c
index 996ad2075b..1c1adb3884 100644
--- a/libio/oldiofgetpos64.c
+++ b/libio/oldiofgetpos64.c
@@ -43,7 +43,7 @@ _IO_old_fgetpos64 (fp, posp)
   CHECK_FILE (fp, EOF);
   _IO_acquire_lock (fp);
   pos = _IO_seekoff_unlocked (fp, 0, _IO_seek_cur, 0);
-  if (_IO_in_backup (fp))
+  if (_IO_in_backup (fp) && pos != _IO_pos_BAD)
     pos -= fp->_IO_save_end - fp->_IO_save_base;
   _IO_release_lock (fp);
   if (pos == _IO_pos_BAD)