[4/5] taskschd: Forward IRegisteredTask::get_State to SchRpcGetTaskInfo.

Dmitry Timoshkov dmitry at baikal.ru
Wed Apr 9 04:50:58 CDT 2014


---
 dlls/taskschd/regtask.c         |  8 ++++++--
 dlls/taskschd/tests/scheduler.c | 13 +++----------
 2 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/dlls/taskschd/regtask.c b/dlls/taskschd/regtask.c
index 2953c6e..038315f 100644
--- a/dlls/taskschd/regtask.c
+++ b/dlls/taskschd/regtask.c
@@ -152,8 +152,12 @@ static HRESULT WINAPI regtask_get_Path(IRegisteredTask *iface, BSTR *path)
 
 static HRESULT WINAPI regtask_get_State(IRegisteredTask *iface, TASK_STATE *state)
 {
-    FIXME("%p,%p: stub\n", iface, state);
-    return E_NOTIMPL;
+    RegisteredTask *regtask = impl_from_IRegisteredTask(iface);
+    DWORD enabled;
+
+    TRACE("%p,%p\n", iface, state);
+
+    return SchRpcGetTaskInfo(regtask->path, SCH_FLAG_STATE, &enabled, state);
 }
 
 static HRESULT WINAPI regtask_get_Enabled(IRegisteredTask *iface, VARIANT_BOOL *enabled)
diff --git a/dlls/taskschd/tests/scheduler.c b/dlls/taskschd/tests/scheduler.c
index 3f8ba3e..7498b70 100644
--- a/dlls/taskschd/tests/scheduler.c
+++ b/dlls/taskschd/tests/scheduler.c
@@ -815,9 +815,7 @@ todo_wine
     ok(!lstrcmpW(bstr, Wine_Task1), "expected \\Wine\\Task1, got %s\n", wine_dbgstr_w(bstr));
     SysFreeString(bstr);
     hr = IRegisteredTask_get_State(task1, &state);
-todo_wine
     ok(hr == S_OK, "get_State error %#x\n", hr);
-if (hr == S_OK)
     ok(state == TASK_STATE_DISABLED, "expected TASK_STATE_DISABLED, got %d\n", state);
     hr = IRegisteredTask_get_Enabled(task1, &vbool);
 todo_wine
@@ -844,9 +842,8 @@ if (hr == S_OK)
     ok(!lstrcmpW(bstr, Wine_Task2), "expected \\Wine\\Task2, got %s\n", wine_dbgstr_w(bstr));
     SysFreeString(bstr);
     hr = IRegisteredTask_get_State(task2, &state);
-todo_wine
     ok(hr == S_OK, "get_State error %#x\n", hr);
-if (hr == S_OK)
+todo_wine
     ok(state == TASK_STATE_READY, "expected TASK_STATE_READY, got %d\n", state);
     hr = IRegisteredTask_get_Enabled(task2, &vbool);
 todo_wine
@@ -875,9 +872,7 @@ todo_wine
     ok(!lstrcmpW(bstr, Wine_Task1), "expected \\Wine\\Task1, got %s\n", wine_dbgstr_w(bstr));
     SysFreeString(bstr);
     hr = IRegisteredTask_get_State(task1, &state);
-todo_wine
     ok(hr == S_OK, "get_State error %#x\n", hr);
-if (hr == S_OK)
     ok(state == TASK_STATE_DISABLED, "expected TASK_STATE_DISABLED, got %d\n", state);
     hr = IRegisteredTask_get_Enabled(task1, &vbool);
 todo_wine
@@ -889,9 +884,8 @@ if (hr == S_OK)
 todo_wine
     ok(hr == S_OK, "put_Enabled error %#x\n", hr);
     hr = IRegisteredTask_get_State(task1, &state);
-todo_wine
     ok(hr == S_OK, "get_State error %#x\n", hr);
-if (hr == S_OK)
+todo_wine
     ok(state == TASK_STATE_READY, "expected TASK_STATE_READY, got %d\n", state);
     hr = IRegisteredTask_get_Enabled(task1, &vbool);
 todo_wine
@@ -913,9 +907,8 @@ if (hr == S_OK)
     ok(!lstrcmpW(bstr, Wine_Task2), "expected \\Wine\\Task2, got %s\n", wine_dbgstr_w(bstr));
     SysFreeString(bstr);
     hr = IRegisteredTask_get_State(task2, &state);
-todo_wine
     ok(hr == S_OK, "get_State error %#x\n", hr);
-if (hr == S_OK)
+todo_wine
     ok(state == TASK_STATE_READY, "expected TASK_STATE_READY, got %d\n", state);
     hr = IRegisteredTask_get_Enabled(task2, &vbool);
 todo_wine
-- 
1.9.1




More information about the wine-patches mailing list