Roy Shea : mstask: Implemented (Set|Get)MaxRunTime.
Alexandre Julliard
julliard at winehq.org
Fri Aug 22 04:44:00 CDT 2008
Module: wine
Branch: master
Commit: a597d9eaed00489ba44cfb0ab339e7b60bd230ba
URL: http://source.winehq.org/git/wine.git/?a=commit;h=a597d9eaed00489ba44cfb0ab339e7b60bd230ba
Author: Roy Shea <royshea at gmail.com>
Date: Thu Aug 21 13:06:19 2008 -0700
mstask: Implemented (Set|Get)MaxRunTime.
---
dlls/mstask/mstask_private.h | 1 +
dlls/mstask/task.c | 19 +++++++++++++++----
dlls/mstask/tests/task.c | 28 ++++++++++++++--------------
3 files changed, 30 insertions(+), 18 deletions(-)
diff --git a/dlls/mstask/mstask_private.h b/dlls/mstask/mstask_private.h
index 05e7b0c..998bb71 100644
--- a/dlls/mstask/mstask_private.h
+++ b/dlls/mstask/mstask_private.h
@@ -61,6 +61,7 @@ typedef struct
LPWSTR applicationName;
LPWSTR parameters;
LPWSTR comment;
+ DWORD maxRunTime;
} TaskImpl;
extern HRESULT TaskConstructor(LPCWSTR pwszTaskName, LPVOID *ppObj);
diff --git a/dlls/mstask/task.c b/dlls/mstask/task.c
index 149869a..707b943 100644
--- a/dlls/mstask/task.c
+++ b/dlls/mstask/task.c
@@ -540,16 +540,24 @@ static HRESULT WINAPI MSTASK_ITask_SetMaxRunTime(
ITask* iface,
DWORD dwMaxRunTime)
{
- FIXME("(%p, %d): stub\n", iface, dwMaxRunTime);
- return E_NOTIMPL;
+ TaskImpl *This = (TaskImpl *)iface;
+
+ TRACE("(%p, %d)\n", iface, dwMaxRunTime);
+
+ This->maxRunTime = dwMaxRunTime;
+ return S_OK;
}
static HRESULT WINAPI MSTASK_ITask_GetMaxRunTime(
ITask* iface,
DWORD *pdwMaxRunTime)
{
- FIXME("(%p, %p): stub\n", iface, pdwMaxRunTime);
- return E_NOTIMPL;
+ TaskImpl *This = (TaskImpl *)iface;
+
+ TRACE("(%p, %p)\n", iface, pdwMaxRunTime);
+
+ *pdwMaxRunTime = This->maxRunTime;
+ return S_OK;
}
static HRESULT WINAPI MSTASK_IPersistFile_QueryInterface(
@@ -721,6 +729,9 @@ HRESULT TaskConstructor(LPCWSTR pwszTaskName, LPVOID *ppObj)
This->parameters = NULL;
This->comment = NULL;
+ /* Default time is 3 days = 259200000 ms */
+ This->maxRunTime = 259200000;
+
*ppObj = &This->lpVtbl;
InterlockedIncrement(&dll_ref);
return S_OK;
diff --git a/dlls/mstask/tests/task.c b/dlls/mstask/tests/task.c
index 349b110..8dfa675 100644
--- a/dlls/mstask/tests/task.c
+++ b/dlls/mstask/tests/task.c
@@ -388,40 +388,40 @@ static void test_SetMaxRunTime_GetMaxRunTime(void)
* 3 days * 24 hours * 60 minutes * 60 seconds * 1000 ms = 259200000 */
max_run_time = 0;
hres = ITask_GetMaxRunTime(test_task, &max_run_time);
- todo_wine ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
- todo_wine ok(max_run_time == 259200000, "Expected 259200000: %d\n", max_run_time);
+ ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
+ ok(max_run_time == 259200000, "Expected 259200000: %d\n", max_run_time);
/* Basic set test */
max_run_time = 0;
hres = ITask_SetMaxRunTime(test_task, 1234);
- todo_wine ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
+ ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
hres = ITask_GetMaxRunTime(test_task, &max_run_time);
- todo_wine ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
- todo_wine ok(max_run_time == 1234, "Expected 1234: %d\n", max_run_time);
+ ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
+ ok(max_run_time == 1234, "Expected 1234: %d\n", max_run_time);
/* Verify that time can be set to zero */
max_run_time = 1;
hres = ITask_SetMaxRunTime(test_task, 0);
- todo_wine ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
+ ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
hres = ITask_GetMaxRunTime(test_task, &max_run_time);
- todo_wine ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
- todo_wine ok(max_run_time == 0, "Expected 0: %d\n", max_run_time);
+ ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
+ ok(max_run_time == 0, "Expected 0: %d\n", max_run_time);
/* Check resolution by setting time to one */
max_run_time = 0;
hres = ITask_SetMaxRunTime(test_task, 1);
- todo_wine ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
+ ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
hres = ITask_GetMaxRunTime(test_task, &max_run_time);
- todo_wine ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
- todo_wine ok(max_run_time == 1, "Expected 1: %d\n", max_run_time);
+ ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
+ ok(max_run_time == 1, "Expected 1: %d\n", max_run_time);
/* Verify that time can be set to INFINITE */
max_run_time = 0;
hres = ITask_SetMaxRunTime(test_task, INFINITE);
- todo_wine ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
+ ok(hres == S_OK, "Failed to set max runtime: 0x%08x\n", hres);
hres = ITask_GetMaxRunTime(test_task, &max_run_time);
- todo_wine ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
- todo_wine ok(max_run_time == INFINITE, "Expected INFINITE: %d\n", max_run_time);
+ ok(hres == S_OK, "Failed to get max runtime: 0x%08x\n", hres);
+ ok(max_run_time == INFINITE, "Expected INFINITE: %d\n", max_run_time);
cleanup_task();
return;
More information about the wine-cvs
mailing list