* libc/locale/lctype.c: Include <string.h> and "setlocale.h".
(_C_ctype_locale): Add braces to initializer. (__ctype_load_locale): Fix compiler warnings in non-Cygwin case. * libc/locale/nl_langinfo.c (nl_langinfo): Expose _NL_CTYPE_MB_CUR_MAX case only if __HAVE_LOCALE_INFO__ is defined.
This commit is contained in:
parent
ffa42cf6a0
commit
7edacc4997
@ -1,3 +1,11 @@
|
||||
2010-05-03 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* libc/locale/lctype.c: Include <string.h> and "setlocale.h".
|
||||
(_C_ctype_locale): Add braces to initializer.
|
||||
(__ctype_load_locale): Fix compiler warnings in non-Cygwin case.
|
||||
* libc/locale/nl_langinfo.c (nl_langinfo): Expose _NL_CTYPE_MB_CUR_MAX
|
||||
case only if __HAVE_LOCALE_INFO__ is defined.
|
||||
|
||||
2010-05-02 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* libc/stdlib/wctob.c (wctob): Reorganize and fix WEOF check. Rename
|
||||
|
@ -22,8 +22,10 @@
|
||||
*/
|
||||
|
||||
#include <limits.h>
|
||||
#include <string.h>
|
||||
#include "lctype.h"
|
||||
#include "ldpart.h"
|
||||
#include "setlocale.h"
|
||||
|
||||
#define LCCTYPE_SIZE (sizeof(struct lc_ctype_T) / sizeof(char *))
|
||||
|
||||
@ -33,10 +35,11 @@ static const struct lc_ctype_T _C_ctype_locale = {
|
||||
"ASCII", /* codeset */
|
||||
numone /* mb_cur_max */
|
||||
#ifdef __HAVE_LOCALE_INFO_EXTENDED__
|
||||
, "0", "1", "2", "3", "4", /* outdigits */
|
||||
"5", "6", "7", "8", "9",
|
||||
L"0", L"1", L"2", L"3", L"4", /* woutdigits */
|
||||
L"5", L"6", L"7", L"8", L"9"
|
||||
,
|
||||
{ "0", "1", "2", "3", "4", /* outdigits */
|
||||
"5", "6", "7", "8", "9" },
|
||||
{ L"0", L"1", L"2", L"3", L"4", /* woutdigits */
|
||||
L"5", L"6", L"7", L"8", L"9" }
|
||||
#endif
|
||||
};
|
||||
|
||||
@ -79,11 +82,11 @@ __ctype_load_locale(const char *name, void *f_wctomb, const char *charset,
|
||||
_ctype_using_locale = 0;
|
||||
else
|
||||
{
|
||||
_ctype_locale.codeset = _ctype_locale_buf;
|
||||
_ctype_locale.mb_cur_max = _ctype_locale_buf + _CTYPE_BUF_SIZE - 2;
|
||||
strcpy (_ctype_locale.codeset, charset);
|
||||
_ctype_locale.mb_cur_max[0] = mb_cur_max;
|
||||
_ctype_locale.mb_cur_max[1] = '\0';
|
||||
_ctype_locale.codeset = strcpy (_ctype_locale_buf, charset);
|
||||
char *mbc = _ctype_locale_buf + _CTYPE_BUF_SIZE - 2;
|
||||
mbc[0] = mb_cur_max;
|
||||
mbc[1] = '\0';
|
||||
_ctype_locale.mb_cur_max = mbc;
|
||||
_ctype_using_locale = 1;
|
||||
}
|
||||
ret = 0;
|
||||
|
@ -412,9 +412,11 @@ do_codeset:
|
||||
case D_MD_ORDER: /* local extension */
|
||||
ret = (char *) __get_current_time_locale()->md_order;
|
||||
break;
|
||||
#ifdef __HAVE_LOCALE_INFO__
|
||||
case _NL_CTYPE_MB_CUR_MAX:
|
||||
ret = (char *) __get_current_ctype_locale()->mb_cur_max;
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
#ifdef __HAVE_LOCALE_INFO_EXTENDED__
|
||||
if (item > _NL_LOCALE_EXTENDED_FIRST_ENTRY
|
||||
|
Loading…
x
Reference in New Issue
Block a user