From: Heikki Linnakangas Date: Thu, 1 Sep 2011 06:13:37 +0000 (+0300) Subject: Move the line to undefine setlocale() macro on Win32 outside USE_REPL_SNPRINTF X-Git-Tag: REL9_2_BETA1~1177 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8ea02570677d2cebe681584fd4c22716f1a1e1a7;p=postgresql Move the line to undefine setlocale() macro on Win32 outside USE_REPL_SNPRINTF ifdef block. It has nothing to do with whether the replacement snprintf function is used. It caused no live bug, because the replacement snprintf function is always used on Win32, but it was nevertheless misplaced. --- diff --git a/src/include/port.h b/src/include/port.h index d9d61d0083..9d742ace0f 100644 --- a/src/include/port.h +++ b/src/include/port.h @@ -184,15 +184,6 @@ extern unsigned char pg_ascii_tolower(unsigned char ch); #ifdef printf #undef printf #endif -/* - * Versions of libintl >= 0.18? try to replace setlocale() with a macro - * to their own versions. Remove the macro, if it exists, because it - * ends up calling the wrong version when the backend and libintl use - * different versions of msvcrt. - */ -#if defined(setlocale) && defined(WIN32) -#undef setlocale -#endif extern int pg_vsnprintf(char *str, size_t count, const char *fmt, va_list args); extern int @@ -235,6 +226,16 @@ __attribute__((format(PG_PRINTF_ATTRIBUTE, 1, 2))); #endif #endif /* USE_REPL_SNPRINTF */ +/* + * Versions of libintl >= 0.18? try to replace setlocale() with a macro + * to their own versions. Remove the macro, if it exists, because it + * ends up calling the wrong version when the backend and libintl use + * different versions of msvcrt. + */ +#if defined(setlocale) && defined(WIN32) +#undef setlocale +#endif + /* Portable prompt handling */ extern char *simple_prompt(const char *prompt, int maxlen, bool echo);