]> granicus.if.org Git - postgresql/commitdiff
Partially revert commit 536d47bd9d5fce8d91929bee3128fa1d08dbcc57.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 22 Apr 2017 06:06:16 +0000 (02:06 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 22 Apr 2017 06:06:16 +0000 (02:06 -0400)
Per buildfarm, the "#ifdef F_SETFD" removed in that commit actually
is needed on Windows, because fcntl() isn't available at all on that
platform, unless using Cygwin.  We could perhaps spell it more like
"#ifdef HAVE_FCNTL", or "#ifndef WIN32", but it's not clear that
those choices are better.

It does seem that we don't need the bogus manual definition of
FD_CLOEXEC, though, so keep that change.

Discussion: https://postgr.es/m/26254.1492805635@sss.pgh.pa.us

src/interfaces/libpq/fe-connect.c

index 1b7175d9ef914db47590a83cbf559134dcb09a96..74e26edad66c83e7c933258c5e7b6fdd5df71115 100644 (file)
@@ -1983,6 +1983,7 @@ keep_going:                                               /* We will come back to here until there is
                                                continue;
                                        }
 
+#ifdef F_SETFD
                                        if (fcntl(conn->sock, F_SETFD, FD_CLOEXEC) == -1)
                                        {
                                                appendPQExpBuffer(&conn->errorMessage,
@@ -1992,6 +1993,7 @@ keep_going:                                               /* We will come back to here until there is
                                                conn->addr_cur = addr_cur->ai_next;
                                                continue;
                                        }
+#endif   /* F_SETFD */
 
                                        if (!IS_AF_UNIX(addr_cur->ai_family))
                                        {