From 9688f343a54ca5f2f7cf5988e3cd05fc62ab2b21 Mon Sep 17 00:00:00 2001 From: Eric Haszlakiewicz Date: Tue, 2 Aug 2016 22:25:05 -0400 Subject: [PATCH] Issue #246: Include xlocale.h too, to get locale_t defined, since not all OSes include that in locale.h --- configure.ac | 2 +- json_tokener.c | 3 +++ tests/test_locale.c | 3 +++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/configure.ac b/configure.ac index a08fa16..161ff00 100644 --- a/configure.ac +++ b/configure.ac @@ -34,7 +34,7 @@ AC_PROG_CC_C99 AC_CONFIG_HEADER(config.h) AC_CONFIG_HEADER(json_config.h) AC_HEADER_STDC -AC_CHECK_HEADERS(fcntl.h limits.h strings.h syslog.h unistd.h [sys/cdefs.h] [sys/param.h] stdarg.h locale.h endian.h) +AC_CHECK_HEADERS(fcntl.h limits.h strings.h syslog.h unistd.h [sys/cdefs.h] [sys/param.h] stdarg.h locale.h xlocale.h endian.h) AC_CHECK_HEADER(inttypes.h,[AC_DEFINE([JSON_C_HAVE_INTTYPES_H],[1],[Public define for json_inttypes.h])]) # Checks for typedefs, structures, and compiler characteristics. diff --git a/json_tokener.c b/json_tokener.c index 0c4007c..fdee1b3 100644 --- a/json_tokener.c +++ b/json_tokener.c @@ -35,6 +35,9 @@ #ifdef HAVE_LOCALE_H #include #endif /* HAVE_LOCALE_H */ +#ifdef HAVE_XLOCALE_H +#include +#endif #define jt_hexdigit(x) (((x) <= '9') ? (x) - '0' : ((x) & 7) + 9) diff --git a/tests/test_locale.c b/tests/test_locale.c index f7f481c..a3e319d 100644 --- a/tests/test_locale.c +++ b/tests/test_locale.c @@ -11,6 +11,9 @@ #ifdef HAVE_LOCALE_H #include #endif /* HAVE_LOCALE_H */ +#ifdef HAVE_XLOCALE_H +#include +#endif int main(int argc, char **argv) {