From 45eadf39551bc1d3d00e677c8b7fd977a17aad01 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Thu, 8 Sep 2011 21:54:12 -0400 Subject: All NT service configuration commands should make the process exit. Fixes bug 3963; fix on 0.2.0.7-alpha. --- changes/bug3963 | 5 +++++ src/or/ntmain.c | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 changes/bug3963 diff --git a/changes/bug3963 b/changes/bug3963 new file mode 100644 index 0000000000..2fc44a095c --- /dev/null +++ b/changes/bug3963 @@ -0,0 +1,5 @@ + o Minor bugfixes: + - When configuring, starting, or stopping an NT service, stop + immediately after the service configuration attempt has succeeded + or failed. Fixes bug3963; bugfix on 0.2.0.7-alpha. + diff --git a/src/or/ntmain.c b/src/or/ntmain.c index b2fee648cc..985fab73ca 100644 --- a/src/or/ntmain.c +++ b/src/or/ntmain.c @@ -728,6 +728,7 @@ nt_service_parse_options(int argc, char **argv, int *should_exit) if ((argc >= 3) && (!strcmp(argv[1], "-service") || !strcmp(argv[1], "--service"))) { nt_service_loadlibrary(); + *should_exit = 1; if (!strcmp(argv[2], "install")) return nt_service_install(argc, argv); if (!strcmp(argv[2], "remove")) @@ -737,7 +738,6 @@ nt_service_parse_options(int argc, char **argv, int *should_exit) if (!strcmp(argv[2], "stop")) return nt_service_cmd_stop(); printf("Unrecognized service command '%s'\n", argv[2]); - *should_exit = 1; return 1; } if (argc >= 2) { -- cgit v1.2.3-54-g00ecf