Dmitry Timoshkov : schedsvc: Implement NetrJobGetInfo.
Alexandre Julliard
julliard at winehq.org
Tue Apr 17 14:53:59 CDT 2018
Module: wine
Branch: master
Commit: be3f4a797fdf243515015d06da7a8adde498f39d
URL: https://source.winehq.org/git/wine.git/?a=commit;h=be3f4a797fdf243515015d06da7a8adde498f39d
Author: Dmitry Timoshkov <dmitry at baikal.ru>
Date: Tue Apr 17 15:12:10 2018 +0800
schedsvc: Implement NetrJobGetInfo.
Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/schedsvc/atsvc.c | 28 ++++++++++++++++++++++++++--
1 file changed, 26 insertions(+), 2 deletions(-)
diff --git a/dlls/schedsvc/atsvc.c b/dlls/schedsvc/atsvc.c
index 7b1c60b..a843b08 100644
--- a/dlls/schedsvc/atsvc.c
+++ b/dlls/schedsvc/atsvc.c
@@ -376,6 +376,30 @@ DWORD __cdecl NetrJobEnum(ATSVC_HANDLE server_name, AT_ENUM_CONTAINER *container
DWORD __cdecl NetrJobGetInfo(ATSVC_HANDLE server_name, DWORD jobid, AT_INFO **info)
{
- FIXME("%s,%u,%p: stub\n", debugstr_w(server_name), jobid, info);
- return ERROR_NOT_SUPPORTED;
+ struct job_t *job;
+ DWORD ret = ERROR_SUCCESS;
+
+ TRACE("%s,%u,%p\n", debugstr_w(server_name), jobid, info);
+
+ EnterCriticalSection(&at_job_list_section);
+
+ job = find_job(jobid, NULL);
+ if (job)
+ {
+ AT_INFO *info_ret = heap_alloc(sizeof(*info_ret));
+ if (!info_ret)
+ ret = ERROR_NOT_ENOUGH_MEMORY;
+ else
+ {
+ info_ret->JobTime = job->info.JobTime;
+ info_ret->DaysOfMonth = job->info.DaysOfMonth;
+ info_ret->DaysOfWeek = job->info.DaysOfWeek;
+ info_ret->Flags = job->info.Flags;
+ info_ret->Command = heap_strdupW(job->info.Command);
+ *info = info_ret;
+ }
+ }
+
+ LeaveCriticalSection(&at_job_list_section);
+ return ret;
}
More information about the wine-cvs
mailing list