summaryrefslogtreecommitdiff
path: root/src/backend/main
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2004-11-17 00:14:14 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2004-11-17 00:14:14 +0000
commit0021ae06be3a74978976ca970bd01941dde70291 (patch)
tree89c5df701ef11b2c7fdcde95c369fd40dacbfaf6 /src/backend/main
parente1bf6527f60a53f1d4abfb9fa6ad71e8694218b3 (diff)
downloadpostgresql-0021ae06be3a74978976ca970bd01941dde70291.tar.gz
Fix Win32 problems with signals and sockets, by making the forkexec code
even uglier than it was already :-(. Also, on Windows only, use temporary shared memory segments instead of ordinary files to pass over critical variable values from postmaster to child processes. Magnus Hagander
Diffstat (limited to 'src/backend/main')
-rw-r--r--src/backend/main/main.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/backend/main/main.c b/src/backend/main/main.c
index e63006c261..315977a2b6 100644
--- a/src/backend/main/main.c
+++ b/src/backend/main/main.c
@@ -13,7 +13,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/main/main.c,v 1.92 2004/11/05 17:11:17 petere Exp $
+ * $PostgreSQL: pgsql/src/backend/main/main.c,v 1.93 2004/11/17 00:14:09 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -118,9 +118,6 @@ main(int argc, char *argv[])
argv[0], err);
exit(1);
}
-
- /* Start our win32 signal implementation */
- pgwin32_signal_initialize();
}
#endif
@@ -281,6 +278,16 @@ main(int argc, char *argv[])
exit(SubPostmasterMain(argc, argv));
#endif
+#ifdef WIN32
+ /*
+ * Start our win32 signal implementation
+ *
+ * SubPostmasterMain() will do this for itself, but the remaining
+ * modes need it here
+ */
+ pgwin32_signal_initialize();
+#endif
+
/*
* If the first argument is "-boot", then invoke bootstrap mode. (This
* path is taken only for a standalone bootstrap process.)