X-Git-Url: https://git.saurik.com/apple/libc.git/blobdiff_plain/3d9156a7a519a5e3aa1b92e9d9d4b991f1aed7ff..15de9d6b4ab2de27ae24b13b7b6c4d55fffe4aef:/locale/FreeBSD/fix_grouping.c?ds=sidebyside diff --git a/locale/FreeBSD/fix_grouping.c b/locale/FreeBSD/fix_grouping.c index ab08f3f..180c800 100644 --- a/locale/FreeBSD/fix_grouping.c +++ b/locale/FreeBSD/fix_grouping.c @@ -31,7 +31,8 @@ __FBSDID("$FreeBSD: src/lib/libc/locale/fix_grouping.c,v 1.8 2003/06/26 10:46:16 #include #include -static const char nogrouping[] = { CHAR_MAX, '\0' }; +static const char nogrouping[] = { '\0' }; +static const char __nogrouping[] = { CHAR_MAX, '\0' }; /* * Internal helper used to convert grouping sequences from string @@ -84,3 +85,14 @@ __fix_locale_grouping_str(const char *str) *dst = '\0'; return str; } + +/* + * internal helpers for SUSv3 compatibility. Since "nogrouping" needs to + * be just an empty string, we provide a routine to substitute __nogrouping + * so we don't have to modify code that expects CHAR_MAX. + */ +__private_extern__ const char * +__fix_nogrouping(const char *str) +{ + return ((str == NULL || *str == '\0') ? __nogrouping : str); +}