[PATCH 1/7] taskschd: Implement ITaskSettings_put_DeleteExpiredTaskAfter.

Hans Leidekker hans at codeweavers.com
Wed Nov 29 03:05:30 CST 2017


Signed-off-by: Hans Leidekker <hans at codeweavers.com>
---
 dlls/taskschd/task.c            | 10 +++++++++-
 dlls/taskschd/tests/scheduler.c |  6 +++---
 2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/dlls/taskschd/task.c b/dlls/taskschd/task.c
index 7c5dca36df..894f4c4ce6 100644
--- a/dlls/taskschd/task.c
+++ b/dlls/taskschd/task.c
@@ -1196,8 +1196,16 @@ static HRESULT WINAPI TaskSettings_get_DeleteExpiredTaskAfter(ITaskSettings *ifa
 
 static HRESULT WINAPI TaskSettings_put_DeleteExpiredTaskAfter(ITaskSettings *iface, BSTR delay)
 {
+    TaskSettings *taskset = impl_from_ITaskSettings(iface);
+    WCHAR *str = NULL;
+
     TRACE("%p,%s\n", iface, debugstr_w(delay));
-    return E_NOTIMPL;
+
+    if (delay && !(str = heap_strdupW(delay))) return E_OUTOFMEMORY;
+    heap_free(taskset->delete_expired_task_after);
+    taskset->delete_expired_task_after = str;
+
+    return S_OK;
 }
 
 static HRESULT WINAPI TaskSettings_get_Priority(ITaskSettings *iface, INT *priority)
diff --git a/dlls/taskschd/tests/scheduler.c b/dlls/taskschd/tests/scheduler.c
index fe54bff809..f15e214200 100644
--- a/dlls/taskschd/tests/scheduler.c
+++ b/dlls/taskschd/tests/scheduler.c
@@ -1138,6 +1138,9 @@ static void change_settings(ITaskDefinition *taskdef, struct settings *test)
         hr = ITaskSettings_put_DeleteExpiredTaskAfter(set, NULL);
     else
         hr = ITaskSettings_put_DeleteExpiredTaskAfter(set, test->delete_expired_task_after);
+    ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
+
+    hr = ITaskSettings_put_Priority(set, test->priority);
 todo_wine
     ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
     /* FIXME: Remove once implemented */
@@ -1147,9 +1150,6 @@ todo_wine
         return;
     }
 
-    hr = ITaskSettings_put_Priority(set, test->priority);
-    ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
-
     hr = ITaskSettings_put_Compatibility(set, test->compatibility);
     ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
 
-- 
2.11.0




More information about the wine-devel mailing list