aboutsummaryrefslogtreecommitdiff
path: root/locale
diff options
context:
space:
mode:
Diffstat (limited to 'locale')
-rw-r--r--locale/C-ctype.c3
-rw-r--r--locale/programs/ld-ctype.c11
2 files changed, 14 insertions, 0 deletions
diff --git a/locale/C-ctype.c b/locale/C-ctype.c
index 344596d972..e93a585538 100644
--- a/locale/C-ctype.c
+++ b/locale/C-ctype.c
@@ -349,9 +349,12 @@ const struct locale_data _nl_C_LC_CTYPE =
{
{ string: _nl_C_LC_CTYPE_class },
{ string: (const char *) _nl_C_LC_CTYPE_toupper },
+ { string: NULL },
{ string: (const char *) _nl_C_LC_CTYPE_tolower },
+ { string: NULL },
{ string: _nl_C_LC_CTYPE_class32 },
{ string: (const char *) _nl_C_LC_CTYPE_names },
+ { string: NULL },
{ word: 256 },
{ word: 1 },
{ string: "upper\0" "lower\0" "alpha\0" "digit\0" "xdigit\0" "space\0"
diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c
index ba40f2eb42..e297aeb254 100644
--- a/locale/programs/ld-ctype.c
+++ b/locale/programs/ld-ctype.c
@@ -864,6 +864,17 @@ ctype_output (struct localedef_t *locale, struct charmap_t *charmap,
if (elem < _NL_ITEM_INDEX (_NL_NUM_LC_CTYPE))
switch (elem)
{
+#define CTYPE_EMPTY(name) \
+ case name: \
+ iov[2 + elem + offset].iov_base = ""; \
+ iov[2 + elem + offset].iov_len = 0; \
+ idx[elem + 1] = idx[elem]; \
+ break
+
+ CTYPE_EMPTY(_NL_CTYPE_GAP1);
+ CTYPE_EMPTY(_NL_CTYPE_GAP2);
+ CTYPE_EMPTY(_NL_CTYPE_GAP3);
+
#define CTYPE_DATA(name, base, len) \
case _NL_ITEM_INDEX (name): \
iov[2 + elem + offset].iov_base = (base); \