[PATCH 1/2] mstask: Implement GetTargetComputer [try 2]
Detlef Riekenberg
wine.dev at web.de
Mon Nov 5 17:20:12 CST 2012
try2: unneeded buffer removed.
--
By by ... Detlef
---
dlls/mstask/task_scheduler.c | 26 ++++++++++++++++++++++++--
1 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/dlls/mstask/task_scheduler.c b/dlls/mstask/task_scheduler.c
index 1d2ac21..44609b8 100644
--- a/dlls/mstask/task_scheduler.c
+++ b/dlls/mstask/task_scheduler.c
@@ -93,8 +93,30 @@ static HRESULT WINAPI MSTASK_ITaskScheduler_GetTargetComputer(
ITaskScheduler* iface,
LPWSTR *ppwszComputer)
{
- FIXME("%p, %p: stub\n", iface, ppwszComputer);
- return E_NOTIMPL;
+ TaskSchedulerImpl *This = impl_from_ITaskScheduler(iface);
+ LPWSTR buffer;
+ DWORD len = MAX_COMPUTERNAME_LENGTH + 1; /* extra space for the zero */
+
+ TRACE("(%p)->(%p)\n", This, ppwszComputer);
+
+ if (!ppwszComputer)
+ return E_INVALIDARG;
+
+ /* extra space for two '\' and a zero */
+ buffer = CoTaskMemAlloc((MAX_COMPUTERNAME_LENGTH + 3) * sizeof(WCHAR));
+ if (buffer)
+ {
+ buffer[0] = '\\';
+ buffer[1] = '\\';
+ if (GetComputerNameW(buffer + 2, &len))
+ {
+ *ppwszComputer = buffer;
+ return S_OK;
+ }
+ CoTaskMemFree(buffer);
+ }
+ *ppwszComputer = NULL;
+ return HRESULT_FROM_WIN32(GetLastError());
}
static HRESULT WINAPI MSTASK_ITaskScheduler_Enum(
--
1.7.5.4
More information about the wine-patches
mailing list