Fix compiling errors on Windows platform. Fix wrong usage of

INT64CONST macro. Fix lo_hton64 and lo_ntoh64 not to use int32_t and
uint32_t.
This commit is contained in:
Tatsuo Ishii 2012-10-07 23:30:31 +09:00
parent b51a65f5bf
commit 7e2f8ed2b0
2 changed files with 7 additions and 7 deletions

View File

@ -65,7 +65,7 @@ typedef struct LargeObjectDesc
/* /*
* Maximum byte length for each large object * Maximum byte length for each large object
*/ */
#define MAX_LARGE_OBJECT_SIZE INT64CONST(INT_MAX * LOBLKSIZE) #define MAX_LARGE_OBJECT_SIZE ((int64)INT_MAX * LOBLKSIZE)
/* /*
* Function definitions... * Function definitions...

View File

@ -1046,13 +1046,13 @@ static pg_int64
lo_hton64(pg_int64 host64) lo_hton64(pg_int64 host64)
{ {
pg_int64 result; pg_int64 result;
uint32_t h32, l32; uint32 h32, l32;
/* High order half first, since we're doing MSB-first */ /* High order half first, since we're doing MSB-first */
h32 = (uint32_t) (host64 >> 32); h32 = (uint32) (host64 >> 32);
/* Now the low order half */ /* Now the low order half */
l32 = (uint32_t) (host64 & 0xffffffff); l32 = (uint32) (host64 & 0xffffffff);
result = htonl(l32); result = htonl(l32);
result <<= 32; result <<= 32;
@ -1069,10 +1069,10 @@ static pg_int64
lo_ntoh64(pg_int64 net64) lo_ntoh64(pg_int64 net64)
{ {
pg_int64 result; pg_int64 result;
uint32_t h32, l32; uint32 h32, l32;
l32 = (uint32_t) (net64 >> 32); l32 = (uint32) (net64 >> 32);
h32 = (uint32_t) (net64 & 0xffffffff); h32 = (uint32) (net64 & 0xffffffff);
result = ntohl(h32); result = ntohl(h32);
result <<= 32; result <<= 32;