aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/postmaster/postmaster.c4
-rw-r--r--src/backend/postmaster/syslogger.c13
-rw-r--r--src/include/c.h8
3 files changed, 16 insertions, 9 deletions
diff --git a/src/backend/postmaster/postmaster.c b/src/backend/postmaster/postmaster.c
index 3883a451225..69f37c02ad7 100644
--- a/src/backend/postmaster/postmaster.c
+++ b/src/backend/postmaster/postmaster.c
@@ -37,7 +37,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/postmaster/postmaster.c,v 1.505.2.7 2009/12/02 17:41:39 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/postmaster/postmaster.c,v 1.505.2.8 2010/04/01 20:12:42 heikki Exp $
*
* NOTES
*
@@ -1107,7 +1107,7 @@ pmdaemonize(void)
ExitPostmaster(1);
}
#endif
- i = open(NULL_DEV, O_RDWR, 0);
+ i = open(DEVNULL, O_RDWR, 0);
dup2(i, 0);
dup2(i, 1);
dup2(i, 2);
diff --git a/src/backend/postmaster/syslogger.c b/src/backend/postmaster/syslogger.c
index 5ac5b6edffa..430e1c82949 100644
--- a/src/backend/postmaster/syslogger.c
+++ b/src/backend/postmaster/syslogger.c
@@ -18,7 +18,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.29.2.4 2007/09/22 18:19:24 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/postmaster/syslogger.c,v 1.29.2.5 2010/04/01 20:12:42 heikki Exp $
*
*-------------------------------------------------------------------------
*/
@@ -180,7 +180,7 @@ SysLoggerMain(int argc, char *argv[])
*/
if (redirection_done)
{
- int fd = open(NULL_DEV, O_WRONLY, 0);
+ int fd = open(DEVNULL, O_WRONLY, 0);
/*
* The closes might look redundant, but they are not: we want to be
@@ -190,9 +190,12 @@ SysLoggerMain(int argc, char *argv[])
*/
close(fileno(stdout));
close(fileno(stderr));
- dup2(fd, fileno(stdout));
- dup2(fd, fileno(stderr));
- close(fd);
+ if (fd != -1)
+ {
+ dup2(fd, fileno(stdout));
+ dup2(fd, fileno(stderr));
+ close(fd);
+ }
}
/* Syslogger's own stderr can't be the syslogPipe, so set it back to
diff --git a/src/include/c.h b/src/include/c.h
index 61400a7f682..b91f58bf603 100644
--- a/src/include/c.h
+++ b/src/include/c.h
@@ -12,7 +12,7 @@
* Portions Copyright (c) 1996-2006, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/c.h,v 1.214.2.1 2007/01/11 02:40:12 momjian Exp $
+ * $PostgreSQL: pgsql/src/include/c.h,v 1.214.2.2 2010/04/01 20:12:43 heikki Exp $
*
*-------------------------------------------------------------------------
*/
@@ -748,7 +748,11 @@ typedef NameData *Name;
#include <unistd.h>
#endif
-/* These are for things that are one way on Unix and another on NT */
+/*
+ * This only works on Unix, not on Windows! This isn't used in PostgreSQL
+ * anymore, use the platform-aware DEVNULL instead. This is kept here just
+ * in case a 3rd party module uses it.
+ */
#define NULL_DEV "/dev/null"
/*