Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 3 Aug 2000 23:38:34 +0000 (23:38 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 3 Aug 2000 23:38:34 +0000 (23:38 +0000)
2000-08-03  Ulrich Drepper  <drepper@redhat.com>

* libio/iofwide.c (_IO_fwide): Initialize fp->_codecvt as well.
* libio/fileops.c (_IO_new_file_fopen): Use _codecvt not from
_wide_data but from _IO_FILE directly.
* libio/iofclose.c: Likewise.
* libio/wfileops.c: Likewise.

* libio/genops.c (_IO_default_showmanyc): Change return type to size_t.
* libio/libioP.h: Change prototypes.

ChangeLog
libio/fileops.c
libio/iofclose.c
libio/iofwide.c
libio/libioP.h
libio/wfileops.c

index 4212357..edaa66d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2000-08-03  Ulrich Drepper  <drepper@redhat.com>
+
+       * libio/iofwide.c (_IO_fwide): Initialize fp->_codecvt as well.
+       * libio/fileops.c (_IO_new_file_fopen): Use _codecvt not from
+       _wide_data but from _IO_FILE directly.
+       * libio/iofclose.c: Likewise.
+       * libio/wfileops.c: Likewise.
+
+       * libio/genops.c (_IO_default_showmanyc): Change return type to size_t.
+       * libio/libioP.h: Change prototypes.
+
 2000-08-03  Greg McGary  <greg@mcgary.org>
 
        * sysdeps/i386/setjmp.S (__sigsetjmp): Pop our
index c3404c1..462ac67 100644 (file)
@@ -289,7 +289,7 @@ _IO_new_file_fopen (fp, filename, mode, is32not64)
            return NULL;
          }
 
-       cc = &fp->_wide_data->_codecvt;
+       cc = fp->_codecvt = &fp->_wide_data->_codecvt;
 
        /* The functions are always the same.  */
        *cc = __libio_codecvt;
index ebe948a..e13a2a3 100644 (file)
@@ -61,7 +61,7 @@ _IO_new_fclose (fp)
 #if _LIBC
       /* This stream has a wide orientation.  This means we have to free
         the conversion functions.  */
-      struct _IO_codecvt *cc = &fp->_wide_data->_codecvt;
+      struct _IO_codecvt *cc = &fp->_codecvt;
 
       if (cc->__cd_in.__cd.__steps->__shlib_handle != NULL)
        {
index ae4f63f..6c4b265 100644 (file)
@@ -114,7 +114,7 @@ _IO_fwide (fp, mode)
 #ifdef _LIBC
       {
        struct gconv_fcts fcts;
-       struct _IO_codecvt *cc = &fp->_wide_data->_codecvt;
+       struct _IO_codecvt *cc = fp->_codecvt = &fp->_wide_data->_codecvt;
 
        __wcsmbs_clone_conv (&fcts);
 
index 6cc23a6..6d3b775 100644 (file)
@@ -256,7 +256,7 @@ typedef int (*_IO_stat_t) __PMT ((_IO_FILE *, void *));
 /* The 'showmany' hook can be used to get an image how much input is
    available.  In many cases the answer will be 0 which means unknown
    but some cases one can provide real information.  */
-typedef int (*_IO_showmanyc_t) __PMT ((_IO_FILE *));
+typedef size_t (*_IO_showmanyc_t) __PMT ((_IO_FILE *));
 #define _IO_SHOWMANYC(FP) JUMP0 (__showmanyc, FP)
 #define _IO_WSHOWMANYC(FP) WJUMP0 (__showmanyc, FP)
 
@@ -404,7 +404,7 @@ extern int _IO_default_stat __P ((_IO_FILE *, void *));
 extern _IO_off64_t _IO_default_seek __P ((_IO_FILE *, _IO_off64_t, int));
 extern int _IO_default_sync __P ((_IO_FILE *));
 #define _IO_default_close ((_IO_close_t) _IO_default_sync)
-extern int _IO_default_showmanyc __P ((_IO_FILE *));
+extern size_t _IO_default_showmanyc __P ((_IO_FILE *));
 extern void _IO_default_imbue __P ((_IO_FILE *, void *));
 
 extern struct _IO_jump_t _IO_file_jumps;
index 45c9120..9fa91f0 100644 (file)
@@ -59,7 +59,7 @@ _IO_wdo_write (fp, data, to_do)
      const wchar_t *data;
      _IO_size_t to_do;
 {
-  struct _IO_codecvt *cc = &fp->_wide_data->_codecvt;
+  struct _IO_codecvt *cc = &fp->_codecvt;
 
   if (to_do > 0)
     {
@@ -133,7 +133,7 @@ _IO_wfile_underflow (fp)
   if (fp->_wide_data->_IO_read_ptr < fp->_wide_data->_IO_read_end)
     return *fp->_wide_data->_IO_read_ptr;
 
-  cd = &fp->_wide_data->_codecvt;
+  cd = &fp->_codecvt;
 
   /* Maybe there is something left in the external buffer.  */
   if (fp->_IO_read_ptr < fp->_IO_read_end)
@@ -362,7 +362,7 @@ _IO_wfile_sync (fp)
     {
       /* We have to find out how many bytes we have to go back in the
         external buffer.  */
-      struct _IO_codecvt *cv = &fp->_wide_data->_codecvt;
+      struct _IO_codecvt *cv = &fp->_codecvt;
       _IO_off64_t new_pos;
 
       int clen = (*cv->__codecvt_do_encoding) (cv);
@@ -466,7 +466,7 @@ _IO_wfile_seekoff (fp, offset, dir, mode)
       /* Adjust for read-ahead (bytes is buffer).  To do this we must
          find out which position in the external buffer corresponds to
          the current position in the internal buffer.  */
-      cv = &fp->_wide_data->_codecvt;
+      cv = &fp->_codecvt;
       clen = (*cv->__codecvt_do_encoding) (cv);
 
       if (clen > 0)