Signed-off-by: Hans Leidekker hans@codeweavers.com --- dlls/taskschd/task.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/dlls/taskschd/task.c b/dlls/taskschd/task.c index a469e12347..84e84913fc 100644 --- a/dlls/taskschd/task.c +++ b/dlls/taskschd/task.c @@ -40,6 +40,7 @@ typedef struct { LONG ref; short interval; WCHAR *start_boundary; + BOOL enabled; } DailyTrigger;
static inline DailyTrigger *impl_from_IDailyTrigger(IDailyTrigger *iface) @@ -192,7 +193,7 @@ static HRESULT WINAPI DailyTrigger_put_StartBoundary(IDailyTrigger *iface, BSTR
TRACE("(%p)->(%s)\n", This, debugstr_w(start));
- if (start && !(This->start_boundary = heap_strdupW(start))) return E_OUTOFMEMORY; + if (start && !(str = heap_strdupW(start))) return E_OUTOFMEMORY; heap_free(This->start_boundary); This->start_boundary = str;
@@ -223,7 +224,10 @@ static HRESULT WINAPI DailyTrigger_get_Enabled(IDailyTrigger *iface, VARIANT_BOO static HRESULT WINAPI DailyTrigger_put_Enabled(IDailyTrigger *iface, VARIANT_BOOL enabled) { DailyTrigger *This = impl_from_IDailyTrigger(iface); - FIXME("(%p)->(%x)\n", This, enabled); + + TRACE("(%p)->(%x)\n", This, enabled); + + This->enabled = enabled ? TRUE : FALSE; return S_OK; }
@@ -303,6 +307,7 @@ static HRESULT DailyTrigger_create(ITrigger **trigger) daily_trigger->ref = 1; daily_trigger->interval = 1; daily_trigger->start_boundary = NULL; + daily_trigger->enabled = FALSE;
*trigger = (ITrigger*)&daily_trigger->IDailyTrigger_iface; return S_OK;
Hans Leidekker hans@codeweavers.com wrote:
- if (start && !(This->start_boundary = heap_strdupW(start))) return E_OUTOFMEMORY;
- if (start && !(str = heap_strdupW(start))) return E_OUTOFMEMORY;
This is a fix for broken code in the previous patch. It would be better to have correct code in the first place.