about summary refs log tree commit diff
path: root/libio/iofclose.c
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2019-11-03 11:39:56 +0100
committerFlorian Weimer <fweimer@redhat.com>2019-11-13 18:18:51 +0100
commit70c6e15654928c603c6d24bd01cf62e7a8e2ce9b (patch)
tree672e377b91c9fc15f00a15d82cd3f0a2f55fba90 /libio/iofclose.c
parent15740788d79447d863b88a5434f09d488d4088d3 (diff)
downloadglibc-70c6e15654928c603c6d24bd01cf62e7a8e2ce9b.tar.gz
glibc-70c6e15654928c603c6d24bd01cf62e7a8e2ce9b.tar.xz
glibc-70c6e15654928c603c6d24bd01cf62e7a8e2ce9b.zip
Redefine _IO_iconv_t to store a single gconv step pointer [BZ #25097]
libio can only deal with gconv conversions which consist of a single
step.  Not using __gconv_info simplifies the data structures somewhat.

This eliminates a new GCC 10 warning about subscribing an inner
zero-length array.

Tested on x86_64-linux-gnu with mainline GCC.  Built with
build-many-glibcs.py, also with mainline GCC.  Due to GCC PR 92039,
there are failures left on 32-bit architectures with float128 support.

Change-Id: I8b4c489b619a53154712ff32e1b6f13bb92d4203
Diffstat (limited to 'libio/iofclose.c')
-rw-r--r--libio/iofclose.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libio/iofclose.c b/libio/iofclose.c
index 398b86d597..3c648d6c13 100644
--- a/libio/iofclose.c
+++ b/libio/iofclose.c
@@ -62,8 +62,8 @@ _IO_new_fclose (FILE *fp)
       struct _IO_codecvt *cc = fp->_codecvt;
 
       __libc_lock_lock (__gconv_lock);
-      __gconv_release_step (cc->__cd_in.__cd.__steps);
-      __gconv_release_step (cc->__cd_out.__cd.__steps);
+      __gconv_release_step (cc->__cd_in.step);
+      __gconv_release_step (cc->__cd_out.step);
       __libc_lock_unlock (__gconv_lock);
     }
   else