mirror of
https://github.com/postgres/postgres.git
synced 2025-11-03 09:13:20 +03:00
Make libpq_gettext save and restore errno in a Windows-compatible way.
Also, back-patch fix into back branches.
This commit is contained in:
@@ -25,7 +25,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-misc.c,v 1.85.2.1 2003/08/04 17:25:28 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-misc.c,v 1.85.2.2 2005/07/08 15:25:36 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -920,8 +920,16 @@ libpq_gettext(const char *msgid)
|
||||
|
||||
if (!already_bound)
|
||||
{
|
||||
/* dgettext() preserves errno, but bindtextdomain() doesn't */
|
||||
int save_errno = errno;
|
||||
|
||||
already_bound = 1;
|
||||
bindtextdomain("libpq", LOCALEDIR);
|
||||
#ifdef WIN32
|
||||
SetLastError(save_errno);
|
||||
#else
|
||||
errno = save_errno;
|
||||
#endif
|
||||
}
|
||||
|
||||
return dgettext("libpq", msgid);
|
||||
|
||||
Reference in New Issue
Block a user