[PATCH 1/2] taskschd: Added ITriggerCollection::Create implementation.
Dmitry Timoshkov
dmitry at baikal.ru
Tue Oct 18 20:46:09 CDT 2016
Jacek Caban <jacek at codeweavers.com> wrote:
> + if(IsEqualGUID(&IID_IUnknown, riid) || IsEqualGUID(&IID_IDispatch, riid) || IsEqualGUID(&IID_ITrigger, riid)
> + || IsEqualGUID(&IID_IDailyTrigger, riid)) {
> + *ppv = &This->IDailyTrigger_iface;
> + }else {
Please try to follow the style of the existing code for placing braces,
add space between if and (, } and else, and split the above line of
comparisons.
> @@ -144,8 +373,29 @@ static HRESULT WINAPI TriggerCollection_get__NewEnum(ITriggerCollection *iface,
> static HRESULT WINAPI TriggerCollection_Create(ITriggerCollection *iface, TASK_TRIGGER_TYPE2 type, ITrigger **trigger)
> {
> trigger_collection *This = impl_from_ITriggerCollection(iface);
> - FIXME("(%p)->(%d %p)\n", This, type, trigger);
> - return E_NOTIMPL;
> +
> + TRACE("(%p)->(%d %p)\n", This, type, trigger);
> +
> + switch(type) {
> + case TASK_TRIGGER_DAILY: {
> + DailyTrigger *daily_trigger;
> +
> + daily_trigger = heap_alloc(sizeof(*daily_trigger));
> + if(!daily_trigger)
> + return E_OUTOFMEMORY;
> +
> + daily_trigger->IDailyTrigger_iface.lpVtbl = &DailyTrigger_vtbl;
> + daily_trigger->ref = 1;
> +
> + *trigger = (ITrigger*)&daily_trigger->IDailyTrigger_iface;
> + break;
> + }
> + default:
> + FIXME("Unimplemented type %d\n", type);
> + return E_NOTIMPL;
> + }
Please add a global constructor for the triggger, and use it here.
--
Dmitry.
More information about the wine-devel
mailing list