aboutsummaryrefslogtreecommitdiff
path: root/src/backend/main/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/main/main.c')
-rw-r--r--src/backend/main/main.c29
1 files changed, 9 insertions, 20 deletions
diff --git a/src/backend/main/main.c b/src/backend/main/main.c
index 9be39739567..3a2a0d598cd 100644
--- a/src/backend/main/main.c
+++ b/src/backend/main/main.c
@@ -181,35 +181,24 @@ main(int argc, char *argv[])
* Dispatch to one of various subprograms depending on first argument.
*/
-#ifdef EXEC_BACKEND
- if (argc > 1 && strncmp(argv[1], "--fork", 6) == 0)
- SubPostmasterMain(argc, argv); /* does not return */
-#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 (argc > 1 && strcmp(argv[1], "--check") == 0)
BootstrapModeMain(argc, argv, true);
else if (argc > 1 && strcmp(argv[1], "--boot") == 0)
BootstrapModeMain(argc, argv, false);
+#ifdef EXEC_BACKEND
+ else if (argc > 1 && strncmp(argv[1], "--fork", 6) == 0)
+ SubPostmasterMain(argc, argv);
+#endif
else if (argc > 1 && strcmp(argv[1], "--describe-config") == 0)
- GucInfoMain(); /* does not return */
+ GucInfoMain();
else if (argc > 1 && strcmp(argv[1], "--single") == 0)
PostgresMain(argc, argv,
NULL, /* no dbname */
- strdup(get_user_name_or_exit(progname))); /* does not return */
+ strdup(get_user_name_or_exit(progname)));
else
- PostmasterMain(argc, argv); /* does not return */
- abort(); /* should not get here */
+ PostmasterMain(argc, argv);
+ /* the functions above should not return */
+ abort();
}