goto done;
}
if (!ControlService( service, control, &status )) error = map_error( GetLastError() );
+ CloseServiceHandle( service );
done:
set_variant( VT_UI4, error, NULL, retval );
- CloseServiceHandle( service );
- CloseServiceHandle( manager );
+ if (manager) CloseServiceHandle( manager );
return S_OK;
}
goto done;
}
if (!StartServiceW( service, 0, NULL )) error = map_error( GetLastError() );
+ CloseServiceHandle( service );
done:
set_variant( VT_UI4, error, NULL, retval );
- CloseServiceHandle( service );
- CloseServiceHandle( manager );
+ if (manager) CloseServiceHandle( manager );
return S_OK;
}