Module: wine Branch: master Commit: 04c3680d1150e89b85f2e1c073c55ffd27b8c4fd URL: http://source.winehq.org/git/wine.git/?a=commit;h=04c3680d1150e89b85f2e1c073...
Author: Dmitry Timoshkov dmitry@baikal.ru Date: Tue Apr 8 15:49:17 2014 +0900
taskschd: Implement ITaskFolder::DeleteTask.
---
dlls/taskschd/folder.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-)
diff --git a/dlls/taskschd/folder.c b/dlls/taskschd/folder.c index 14f1430..d9b201e 100644 --- a/dlls/taskschd/folder.c +++ b/dlls/taskschd/folder.c @@ -283,8 +283,23 @@ static HRESULT WINAPI TaskFolder_GetTasks(ITaskFolder *iface, LONG flags, IRegis
static HRESULT WINAPI TaskFolder_DeleteTask(ITaskFolder *iface, BSTR name, LONG flags) { - FIXME("%p,%s,%x: stub\n", iface, debugstr_w(name), flags); - return E_NOTIMPL; + TaskFolder *folder = impl_from_ITaskFolder(iface); + WCHAR *folder_path; + HRESULT hr; + + TRACE("%p,%s,%x\n", iface, debugstr_w(name), flags); + + if (!name || !*name) return E_ACCESSDENIED; + + if (flags) + FIXME("unsupported flags %x\n", flags); + + folder_path = get_full_path(folder->path, name); + if (!folder_path) return E_OUTOFMEMORY; + + hr = SchRpcDelete(folder_path, 0); + heap_free(folder_path); + return hr; }
static HRESULT WINAPI TaskFolder_RegisterTask(ITaskFolder *iface, BSTR name, BSTR xml, LONG flags,