* wctype/wctrans.c (wctrans): Use correct base index to access
	extra mapping tables.

	* locale/loadlocale.c (_nl_load_locale): Use actual number of
	entries from file and not the fixed (minimal number from the
	langinfo.h list.
This commit is contained in:
Ulrich Drepper 1999-11-20 23:27:27 +00:00
parent 9e2b7438ec
commit bece1bc4ec
3 changed files with 10 additions and 4 deletions

View File

@ -1,5 +1,12 @@
1999-11-20 Ulrich Drepper <drepper@cygnus.com>
* wctype/wctrans.c (wctrans): Use correct base index to access
extra mapping tables.
* locale/loadlocale.c (_nl_load_locale): Use actual number of
entries from file and not the fixed (minimal number from the
langinfo.h list.
* locale/programs/ld-ctype.c (ctype_read): Fix reading of <U....>
values in charmaps.

View File

@ -176,8 +176,7 @@ _nl_load_locale (struct loaded_l10nfile *file, int category)
}
newdata = malloc (sizeof *newdata
+ (_nl_category_num_items[category]
* sizeof (union locale_data_value)));
+ filedata->nstrings * sizeof (union locale_data_value));
if (! newdata)
goto puntmap;
@ -186,7 +185,7 @@ _nl_load_locale (struct loaded_l10nfile *file, int category)
newdata->filesize = st.st_size;
newdata->mmaped = mmaped;
newdata->usage_count = 0;
newdata->nstrings = _nl_category_num_items[category];
newdata->nstrings = filedata->nstrings;
for (cnt = 0; cnt < newdata->nstrings; ++cnt)
{
off_t idx = filedata->strindex[cnt];

View File

@ -50,7 +50,7 @@ wctrans (const char *property)
return (wctrans_t) __ctype_tolower;
/* We have to search the table. */
result = (int32_t *) _NL_CURRENT (LC_CTYPE, _NL_CTYPE_WIDTH + cnt - 2);
result = (int32_t *) _NL_CURRENT (LC_CTYPE, _NL_NUM_LC_CTYPE + cnt - 2);
return (wctrans_t) (result + 128);
}