All NT service configuration commands should make the process exit.

Fixes bug 3963; fix on 0.2.0.7-alpha.
This commit is contained in:
Nick Mathewson 2011-09-08 21:54:12 -04:00
parent dfa6cde4d4
commit 45eadf3955
2 changed files with 6 additions and 1 deletions

5
changes/bug3963 Normal file
View File

@ -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.

View File

@ -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) {