summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-06-28 21:38:03 +0000
committerUlrich Drepper <drepper@redhat.com>2000-06-28 21:38:03 +0000
commit777e222ddbdffe54b5e344ac1cb40a6ab9ef621f (patch)
tree9b495f8840742f768f0a6cb0f676774157d628c9
parentea9e5dc03bfc73e8c197a9eabaf4e84999cbba49 (diff)
Update.
* Makefile (do-tst-ctype): Add do-tst-mbswcs to list of dependencies. (TEST_MBWC_ENV): Remove unnecessary slash. * tst-ctype.sh: Add de_DE.UTF-8 to list of tested locales. * tests-mbwc/dat_iswalnum.c (TST_ISW_LOC): Correct UTF-8 input data. * Makefile: Add do-tst-mbswcs to dependencies of locale test suite tests.
-rw-r--r--iconv/skeleton.c9
-rw-r--r--localedata/ChangeLog9
-rw-r--r--localedata/Makefile4
-rwxr-xr-xlocaledata/tst-ctype.sh2
4 files changed, 20 insertions, 4 deletions
diff --git a/iconv/skeleton.c b/iconv/skeleton.c
index 854cc70bee..e203f0fddb 100644
--- a/iconv/skeleton.c
+++ b/iconv/skeleton.c
@@ -294,9 +294,16 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
#ifdef EMIT_SHIFT_TO_INIT
/* Emit the escape sequence to reset the state. */
EMIT_SHIFT_TO_INIT;
+#else
+ /* Clear the state object. There might be bytes in there from
+ previous calls with CONSUME_INCOMPLETE == 1. */
+ memset (data->__statep, '\0', sizeof (*data->__statep));
#endif
/* Call the steps down the chain if there are any but only if we
- successfully emitted the escape sequence. */
+ successfully emitted the escape sequence. This should only
+ fail if the output buffer is full. If the input is invalid
+ it should be discarded since the user wants to start from a
+ clean slate. */
if (status == __GCONV_OK && ! (data->__flags & __GCONV_IS_LAST))
status = DL_CALL_FCT (fct, (next_step, next_data, NULL, NULL,
NULL, irreversible, 1,
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index b5becf70ad..1f61a85259 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,5 +1,14 @@
2000-06-28 Ulrich Drepper <drepper@redhat.com>
+ * Makefile (do-tst-ctype): Add do-tst-mbswcs to list of dependencies.
+ (TEST_MBWC_ENV): Remove unnecessary slash.
+ * tst-ctype.sh: Add de_DE.UTF-8 to list of tested locales.
+
+ * tests-mbwc/dat_iswalnum.c (TST_ISW_LOC): Correct UTF-8 input data.
+
+ * Makefile: Add do-tst-mbswcs to dependencies of locale test suite
+ tests.
+
* locales/iso14651_t1: Explicitly add control character in
U0000-U001F and U007F-U009F range for backward compatibility.
diff --git a/localedata/Makefile b/localedata/Makefile
index d380c7d8cf..2a4356dbb3 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -130,7 +130,7 @@ do-tst-trans: tst-trans.sh $(objpfx)tst-trans
do-tst-mbswcs: tst-mbswcs.sh $(objpfx)tst-mbswcs1 $(objpfx)tst-mbswcs2 \
$(objpfx)tst-mbswcs3 $(objpfx)tst-mbswcs4 $(objpfx)tst-mbswcs5
$(SHELL) -e $< $(common-objpfx)
-do-tst-ctype: tst-ctype.sh $(objpfx)tst-ctype do-collate-test
+do-tst-ctype: tst-ctype.sh $(objpfx)tst-ctype do-collate-test do-tst-mbswcs
$(SHELL) -e $< $(common-objpfx)
$(addsuffix .out,$(addprefix $(objpfx),$(locale_test_suite))): %: do-tst-ctype\
do-tst-mbswcs
@@ -149,7 +149,7 @@ install-locales:
$(inst_localedir)/$$locale; \
done < SUPPORTED
-TEST_MBWC_ENV:= LOCPATH=$(common-objpfx)/localedata
+TEST_MBWC_ENV:= LOCPATH=$(common-objpfx)localedata
tst_iswalnum-ENV = $(TEST_MBWC_ENV)
tst_iswalpha-ENV = $(TEST_MBWC_ENV)
tst_iswcntrl-ENV = $(TEST_MBWC_ENV)
diff --git a/localedata/tst-ctype.sh b/localedata/tst-ctype.sh
index 6946c30671..135d7b4daf 100755
--- a/localedata/tst-ctype.sh
+++ b/localedata/tst-ctype.sh
@@ -46,7 +46,7 @@ status=0
# Run the test programs.
rm -f ${common_objpfx}localedata/tst-ctype.out
-for loc in de_DE en_US ja_JP.EUC-JP; do
+for loc in de_DE de_DE.UTF-8 en_US ja_JP.EUC-JP; do
if test -f tst-ctype-$loc.in; then
input=tst-ctype-$loc.in
else