summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog11
-rw-r--r--libio/iofwide.c6
-rw-r--r--wcsmbs/btowc.c1
-rw-r--r--wcsmbs/mbrtowc.c1
-rw-r--r--wcsmbs/mbsnrtowcs.c1
-rw-r--r--wcsmbs/mbsrtowcs.c1
-rw-r--r--wcsmbs/wcrtomb.c1
-rw-r--r--wcsmbs/wcsnrtombs.c1
-rw-r--r--wcsmbs/wcsrtombs.c1
-rw-r--r--wcsmbs/wctob.c1
10 files changed, 25 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index e838861d1d..e01a054c9f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,16 @@
 2000-06-12  Ulrich Drepper  <drepper@redhat.com>
 
+	* libio/iofwide.c (_IO_fwide): Initialize transliteration part of
+	step data structure.
+	* wcsmbs/btowc.c: Likewise.
+	* wcsmbs/mbrtowc.c: Likewise.
+	* wcsmbs/mbsnrtowcs.c: Likewise.
+	* wcsmbs/mbsrtowcs.c: Likewise.
+	* wcsmbs/wcrtomb.c: Likewise.
+	* wcsmbs/wcsnrtombs.c: Likewise.
+	* wcsmbs/wcsrtombs.c: Likewise.
+	* wcsmbs/wctob.c: Likewise.
+
 	* sysdeps/unix/sysv/linux/sh/Dist: There is no ioperm file.
 	* sysdeps/unix/sysv/linux/sh/oldgetrlimit64.c: Removed.
 
diff --git a/libio/iofwide.c b/libio/iofwide.c
index 5ca0a84f0d..bb26dddc85 100644
--- a/libio/iofwide.c
+++ b/libio/iofwide.c
@@ -124,6 +124,9 @@ _IO_fwide (fp, mode)
 	cc->__cd_in.__cd.__data[0].__internal_use = 1;
 	cc->__cd_in.__cd.__data[0].__flags = __GCONV_IS_LAST;
 	cc->__cd_in.__cd.__data[0].__statep = &fp->_wide_data->_IO_state;
+	/* XXX For now no transliteration.  */
+	memset (&cc->__cd_in.__cd.__data[0].__trans, '\0',
+		sizeof (struct __gconv_trans_data));
 
 	cc->__cd_out.__cd.__nsteps = 1; /* Only one step allowed.  */
 	cc->__cd_out.__cd.__steps = fcts.tomb;
@@ -132,6 +135,9 @@ _IO_fwide (fp, mode)
 	cc->__cd_out.__cd.__data[0].__internal_use = 1;
 	cc->__cd_out.__cd.__data[0].__flags = __GCONV_IS_LAST;
 	cc->__cd_out.__cd.__data[0].__statep = &fp->_wide_data->_IO_state;
+	/* XXX For now no transliteration.  */
+	memset (&cc->__cd_out.__cd.__data[0].__trans, '\0',
+		sizeof (struct __gconv_trans_data));
       }
 #else
 # error "somehow determine this from LC_CTYPE"
diff --git a/wcsmbs/btowc.c b/wcsmbs/btowc.c
index 1271a01ed6..a6841032f2 100644
--- a/wcsmbs/btowc.c
+++ b/wcsmbs/btowc.c
@@ -49,6 +49,7 @@ __btowc (c)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = &data.__state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   /* Make sure we start in the initial state.  */
   memset (&data.__state, '\0', sizeof (mbstate_t));
diff --git a/wcsmbs/mbrtowc.c b/wcsmbs/mbrtowc.c
index 9809ed51a2..b67b3f7d34 100644
--- a/wcsmbs/mbrtowc.c
+++ b/wcsmbs/mbrtowc.c
@@ -49,6 +49,7 @@ __mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = ps ?: &state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   /* A first special case is if S is NULL.  This means put PS in the
      initial state.  */
diff --git a/wcsmbs/mbsnrtowcs.c b/wcsmbs/mbsnrtowcs.c
index 238458d25d..51d9cd09f2 100644
--- a/wcsmbs/mbsnrtowcs.c
+++ b/wcsmbs/mbsnrtowcs.c
@@ -57,6 +57,7 @@ __mbsnrtowcs (dst, src, nmc, len, ps)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = ps ?: &state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   if (nmc == 0)
     return 0;
diff --git a/wcsmbs/mbsrtowcs.c b/wcsmbs/mbsrtowcs.c
index 3c1f86a196..77e631ea46 100644
--- a/wcsmbs/mbsrtowcs.c
+++ b/wcsmbs/mbsrtowcs.c
@@ -53,6 +53,7 @@ __mbsrtowcs (dst, src, len, ps)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = ps ?: &state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   /* Make sure we use the correct function.  */
   update_conversion_ptrs ();
diff --git a/wcsmbs/wcrtomb.c b/wcsmbs/wcrtomb.c
index f0bc824584..375a000072 100644
--- a/wcsmbs/wcrtomb.c
+++ b/wcsmbs/wcrtomb.c
@@ -49,6 +49,7 @@ __wcrtomb (char *s, wchar_t wc, mbstate_t *ps)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = ps ?: &state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   /* A first special case is if S is NULL.  This means put PS in the
      initial state.  */
diff --git a/wcsmbs/wcsnrtombs.c b/wcsmbs/wcsnrtombs.c
index dae2216ae5..ec87d85a99 100644
--- a/wcsmbs/wcsnrtombs.c
+++ b/wcsmbs/wcsnrtombs.c
@@ -55,6 +55,7 @@ __wcsnrtombs (dst, src, nwc, len, ps)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = ps ?: &state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   if (nwc == 0)
     return 0;
diff --git a/wcsmbs/wcsrtombs.c b/wcsmbs/wcsrtombs.c
index 03ef013c7c..b2e4c18ccc 100644
--- a/wcsmbs/wcsrtombs.c
+++ b/wcsmbs/wcsrtombs.c
@@ -51,6 +51,7 @@ __wcsrtombs (dst, src, len, ps)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = ps ?: &state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   /* Make sure we use the correct function.  */
   update_conversion_ptrs ();
diff --git a/wcsmbs/wctob.c b/wcsmbs/wctob.c
index fc4c38331d..800a37e2f8 100644
--- a/wcsmbs/wctob.c
+++ b/wcsmbs/wctob.c
@@ -43,6 +43,7 @@ wctob (c)
   data.__internal_use = 1;
   data.__flags = __GCONV_IS_LAST;
   data.__statep = &data.__state;
+  memset (&data.__trans, '\0', sizeof (struct __gconv_trans_data));
 
   /* Make sure we start in the initial state.  */
   memset (&data.__state, '\0', sizeof (mbstate_t));