[PATCH 2/5] taskschd: Implement ITaskSettings_put_RestartInterval.

Hans Leidekker hans at codeweavers.com
Mon Nov 27 03:41:19 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 cca5414a3a..e184ca813a 100644
--- a/dlls/taskschd/task.c
+++ b/dlls/taskschd/task.c
@@ -924,8 +924,16 @@ static HRESULT WINAPI TaskSettings_get_RestartInterval(ITaskSettings *iface, BST
 
 static HRESULT WINAPI TaskSettings_put_RestartInterval(ITaskSettings *iface, BSTR interval)
 {
+    TaskSettings *taskset = impl_from_ITaskSettings(iface);
+    BSTR str = NULL;
+
     TRACE("%p,%s\n", iface, debugstr_w(interval));
-    return E_NOTIMPL;
+
+    if (interval && !(str = SysAllocString(interval))) return E_OUTOFMEMORY;
+    SysFreeString(taskset->restart_interval);
+    taskset->restart_interval = str;
+
+    return S_OK;
 }
 
 static HRESULT WINAPI TaskSettings_get_RestartCount(ITaskSettings *iface, INT *count)
diff --git a/dlls/taskschd/tests/scheduler.c b/dlls/taskschd/tests/scheduler.c
index 65287b3f24..0e1c2ebc3d 100644
--- a/dlls/taskschd/tests/scheduler.c
+++ b/dlls/taskschd/tests/scheduler.c
@@ -1102,6 +1102,9 @@ static void change_settings(ITaskDefinition *taskdef, struct settings *test)
         hr = ITaskSettings_put_RestartInterval(set, NULL);
     else
         hr = ITaskSettings_put_RestartInterval(set, test->restart_interval);
+    ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
+
+    hr = ITaskSettings_put_RestartCount(set, test->restart_count);
 todo_wine
     ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
     /* FIXME: Remove once implemented */
@@ -1111,9 +1114,6 @@ todo_wine
         return;
     }
 
-    hr = ITaskSettings_put_RestartCount(set, test->restart_count);
-    ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
-
     hr = ITaskSettings_put_MultipleInstances(set, test->policy);
     ok(hr == S_OK, "expected S_OK, got %#x\n", hr);
 
-- 
2.11.0




More information about the wine-devel mailing list