Dmitry Timoshkov : taskschd: Implement ITaskFolder::DeleteTask.
Alexandre Julliard
julliard at winehq.org
Tue Apr 8 14:02:50 CDT 2014
Module: wine
Branch: master
Commit: 04c3680d1150e89b85f2e1c073c55ffd27b8c4fd
URL: http://source.winehq.org/git/wine.git/?a=commit;h=04c3680d1150e89b85f2e1c073c55ffd27b8c4fd
Author: Dmitry Timoshkov <dmitry at 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,
More information about the wine-cvs
mailing list