diff options
author | Bruce Momjian <bruce@momjian.us> | 2004-04-19 17:42:59 +0000 |
---|---|---|
committer | Bruce Momjian <bruce@momjian.us> | 2004-04-19 17:42:59 +0000 |
commit | 31338352bd89439c7c55d25c13d88338fa874771 (patch) | |
tree | 318c34ab817a8d3e47b2fa6fa1c37ceacd8541a4 /src/port/pipe.c | |
parent | 862b20b3822887bdb3b42a72ea0e73dc8028fb31 (diff) | |
download | postgresql-31338352bd89439c7c55d25c13d88338fa874771.tar.gz postgresql-31338352bd89439c7c55d25c13d88338fa874771.zip |
* Most changes are to fix warnings issued when compiling win32
* removed a few redundant defines
* get_user_name safe under win32
* rationalized pipe read EOF for win32 (UPDATED PATCH USED)
* changed all backend instances of sleep() to pg_usleep
- except for the SLEEP_ON_ASSERT in assert.c, as it would exceed a
32-bit long [Note to patcher: If a SLEEP_ON_ASSERT of 2000 seconds is
acceptable, please replace with pg_usleep(2000000000L)]
I added a comment to that part of the code:
/*
* It would be nice to use pg_usleep() here, but only does 2000 sec
* or 33 minutes, which seems too short.
*/
sleep(1000000);
Claudio Natoli
Diffstat (limited to 'src/port/pipe.c')
-rw-r--r-- | src/port/pipe.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/port/pipe.c b/src/port/pipe.c index fe94c091113..4a707f7335c 100644 --- a/src/port/pipe.c +++ b/src/port/pipe.c @@ -10,7 +10,7 @@ * must be replaced with recv/send. * * IDENTIFICATION - * $PostgreSQL: pgsql/src/port/pipe.c,v 1.1 2004/01/09 04:58:09 momjian Exp $ + * $PostgreSQL: pgsql/src/port/pipe.c,v 1.2 2004/04/19 17:42:59 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -53,3 +53,13 @@ pgpipe(int handles[2]) closesocket(s); return 0; } + + +int piperead(int s, char* buf, int len) +{ + int ret = recv(s,buf,len,0); + if (ret < 0 && WSAGetLastError() == WSAECONNRESET) + /* EOF on the pipe! (win32 socket based implementation) */ + ret = 0; + return ret; +} |