aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2011-11-21 10:52:38 -0500
committerNick Mathewson <nickm@torproject.org>2011-11-21 10:52:38 -0500
commit929074b368fe94cbe74a49e5353a35f60c6623af (patch)
tree7833089de852b15d74dc352712383ad2944bc567
parent0539c34c35380231c745dd9701b0884a20ee95d1 (diff)
parentb3c988f0d7e18c243074e3e583c10b204521088f (diff)
downloadtor-929074b368fe94cbe74a49e5353a35f60c6623af.tar
tor-929074b368fe94cbe74a49e5353a35f60c6623af.tar.gz
Merge remote-tracking branch 'origin/maint-0.2.2'
-rw-r--r--changes/bug39635
-rw-r--r--src/or/ntmain.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/changes/bug3963 b/changes/bug3963
new file mode 100644
index 000000000..2fc44a095
--- /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 4eb487e97..8d03ea808 100644
--- a/src/or/ntmain.c
+++ b/src/or/ntmain.c
@@ -727,6 +727,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"))
@@ -736,7 +737,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) {