浏览代码

Delay report that the service is running.

Wait until the application has been running for long enough to be exempt
from restart throttling before reporting a status of SERVICE_RUNNING to
the operating system.

Thanks Tom Saul.
Iain Patterson 12 年之前
父节点
当前提交
c50225935f
共有 1 个文件被更改,包括 3 次插入3 次删除
  1. 3 3
      service.cpp

+ 3 - 3
service.cpp

@@ -404,13 +404,13 @@ int start_service() {
 
   close_output_handles(&si);
 
+  /* Wait for a clean startup. */
+  if (WaitForSingleObject(process_handle, throttle_delay) == WAIT_TIMEOUT) throttle = 0;
+
   /* Signal successful start */
   service_status.dwCurrentState = SERVICE_RUNNING;
   SetServiceStatus(service_handle, &service_status);
 
-  /* Wait for a clean startup. */
-  if (WaitForSingleObject(process_handle, throttle_delay) == WAIT_TIMEOUT) throttle = 0;
-
   return 0;
 }