Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 3 Oct 2002 08:38:41 +0000 (08:38 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 3 Oct 2002 08:38:41 +0000 (08:38 +0000)
2002-10-03  Ulrich Drepper  <drepper@redhat.com>

* libio/freopen.c: Don't re-set _wide_data element if the stream
is of old style which didn't have the element.
* libio/freopen64.c: Likewise.

ChangeLog
libio/freopen.c
libio/freopen64.c

index b9febc1..bfbebf5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2002-10-03  Ulrich Drepper  <drepper@redhat.com>
+
+       * libio/freopen.c: Don't re-set _wide_data element if the stream
+       is of old style which didn't have the element.
+       * libio/freopen64.c: Likewise.
+
 2002-10-02  Ulrich Drepper  <drepper@redhat.com>
 
        * sysdeps/unix/sysv/linux/x86_64/Dist: Add bits/utmpx.h.
index 01816a1..244a90d 100644 (file)
@@ -68,7 +68,8 @@ freopen (filename, mode, fp)
     {
       INTUSE(_IO_file_close_it) (fp);
       _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
-      fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps);
+      if (fp->_vtable_offset == 0 && fp->_wide_data != NULL)
+       fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps);
       result = INTUSE(_IO_file_fopen) (fp, filename, mode, 1);
       if (result != NULL)
        result = __fopen_maybe_mmap (result);
index 7ab9bd3..8f69fce 100644 (file)
@@ -54,7 +54,8 @@ freopen64 (filename, mode, fp)
     }
   INTUSE(_IO_file_close_it) (fp);
   _IO_JUMPS ((struct _IO_FILE_plus *) fp) = &INTUSE(_IO_file_jumps);
-  fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps);
+  if (fp->_vtable_offset == 0 && fp->_wide_data != NULL)
+    fp->_wide_data->_wide_vtable = &INTUSE(_IO_wfile_jumps);
   result = INTUSE(_IO_file_fopen) (fp, filename, mode, 0);
   if (result != NULL)
     result = __fopen_maybe_mmap (result);