summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Src/utils.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index edd4a1040..4e3793923 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2005-12-14 Peter Stephenson <pws@csr.com>
+
+ * 22075: Src/utils.c: assume the effect of __STDC_ISO_10646__ for
+ character conversion when --enable-multibyte is in effect (since
+ we do everywhere else).
+
2005-12-12 Peter Stephenson <pws@csr.com>
* unposted: Config/version.mk: aargh, didn't commit this for
diff --git a/Src/utils.c b/Src/utils.c
index 21fdffddb..0265f9c52 100644
--- a/Src/utils.c
+++ b/Src/utils.c
@@ -3918,7 +3918,7 @@ dquotedzputs(char const *s, FILE *stream)
}
#endif
-# if defined(HAVE_NL_LANGINFO) && defined(CODESET) && !defined(__STDC_ISO_10646__)
+# if defined(HAVE_NL_LANGINFO) && defined(CODESET) && !defined(__STDC_ISO_10646__) && !defined(MULTIBYTE_SUPPORT)
/* Convert a character from UCS4 encoding to UTF-8 */
/**/
@@ -3984,7 +3984,7 @@ getkeystring(char *s, int *len, int fromwhere, int *misc)
char svchar = '\0';
int meta = 0, control = 0;
int i;
-#if defined(HAVE_WCHAR_H) && defined(HAVE_WCTOMB) && defined(__STDC_ISO_10646__)
+#if defined(HAVE_WCHAR_H) && defined(HAVE_WCTOMB) && (defined(__STDC_ISO_10646__) || defined(MULTIBYTE_SUPPORT))
wint_t wval;
size_t count;
#else
@@ -4093,7 +4093,7 @@ getkeystring(char *s, int *len, int fromwhere, int *misc)
*misc = wval;
return s+1;
}
-#if defined(HAVE_WCHAR_H) && defined(HAVE_WCTOMB) && defined(__STDC_ISO_10646__)
+#if defined(HAVE_WCHAR_H) && defined(HAVE_WCTOMB) && (defined(__STDC_ISO_10646__) || defined(MULTIBYTE_SUPPORT))
count = wctomb(t, (wchar_t)wval);
if (count == (size_t)-1) {
zerr("character not in range", NULL, 0);