advapi32: Implement RegisterServiceCtrlHandleExW.

Robert Shearman rob at codeweavers.com
Fri Jun 30 06:14:28 CDT 2006


Andrey Turkin wrote:

>Robert Shearman wrote:
>  
>
>
>>@@ -603,10 +608,18 @@ static BOOL service_handle_control(HANDL
>> 
>>     TRACE("received control %ld\n", dwControl);
>>     
>>-    if (service_accepts_control(service, dwControl) && service->handler)
>>+    if (service_accepts_control(service, dwControl))
>>     {
>>-        service->handler(dwControl);
>>-        ret = ERROR_SUCCESS;
>>+        if (service->extended && service->handler.handler)
>>+        {
>>+            service->handler.handler(dwControl);
>>+            ret = ERROR_SUCCESS;
>>+        }
>>+        else if (service->handler.handler_ex)
>>+        {
>>+            service->handler.handler_ex(dwControl, 0, NULL, service->context);
>>+            ret = ERROR_SUCCESS;
>>+        }
>>     }
>>    
>>
>Just wondering why you use Ex handler when service->extended==FALSE and
>vice versa.
>

That would be a bug. Thanks for catching it.

-- 
Rob Shearman




More information about the wine-devel mailing list