X-Git-Url: http://git.iain.cx/?a=blobdiff_plain;f=service.cpp;h=52937cffb399d19f82dd436b5ec117bf91c85130;hb=b5286398f850b432edbddc6d602ab3f33ab086be;hp=3d3acb9ea6b7b292f58a632847efaf280268c21e;hpb=d340e13effcabebb9eed2ace2e7874eff683e13d;p=nssm.git diff --git a/service.cpp b/service.cpp index 3d3acb9..52937cf 100644 --- a/service.cpp +++ b/service.cpp @@ -689,6 +689,7 @@ void set_nssm_service_defaults(nssm_service_t *service) { service->kill_console_delay = NSSM_KILL_CONSOLE_GRACE_PERIOD; service->kill_window_delay = NSSM_KILL_WINDOW_GRACE_PERIOD; service->kill_threads_delay = NSSM_KILL_THREADS_GRACE_PERIOD; + service->kill_process_tree = 1; } /* Allocate and zero memory for a service. */ @@ -1800,7 +1801,7 @@ void CALLBACK end_service(void *arg, unsigned char why) { /* Clean up. */ if (exitcode == STILL_ACTIVE) exitcode = 0; - if (service->pid) kill_process_tree(service, service->pid, exitcode, service->pid); + if (service->pid && service->kill_process_tree) kill_process_tree(service, service->pid, exitcode, service->pid); service->pid = 0; /*