Disable strtoul() ERANGE check on Win32, because it isn't thread safe,

and it isn't really required.
This commit is contained in:
Bruce Momjian 2005-08-13 01:34:30 +00:00
parent 27639809d2
commit f810cfb291

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-exec.c,v 1.170 2005/07/02 17:01:54 momjian Exp $
* $PostgreSQL: pgsql/src/interfaces/libpq/fe-exec.c,v 1.171 2005/08/13 01:34:30 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -2166,7 +2166,15 @@ PQoidValue(const PGresult *res)
#endif
result = strtoul(res->cmdStatus + 7, &endptr, 10);
if (!endptr || (*endptr != ' ' && *endptr != '\0') || errno == ERANGE)
if (!endptr || (*endptr != ' ' && *endptr != '\0')
#ifndef WIN32
/*
* On WIN32, errno is not thread-safe and GetLastError() isn't set by
* strtoul(), so we can't check on this platform.
*/
|| errno == ERANGE
#endif
)
return InvalidOid;
else
return (Oid) result;