[PATCH 3/3] kernel32: Implement stub for SetThreadInformation
Fabian Maurer
dark.shadow4 at web.de
Fri Aug 10 13:39:16 CDT 2018
This is needed by chromium tests
Signed-off-by: Fabian Maurer <dark.shadow4 at web.de>
---
...api-ms-win-core-processthreads-l1-1-2.spec | 2 +-
dlls/kernel32/kernel32.spec | 1 +
dlls/kernel32/thread.c | 11 +++++++
dlls/kernelbase/kernelbase.spec | 2 +-
include/processthreadsapi.h | 31 +++++++++++++++++++
5 files changed, 45 insertions(+), 2 deletions(-)
create mode 100644 include/processthreadsapi.h
diff --git a/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec b/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec
index 8de6c5b66c..bcb915cdda 100644
--- a/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec
+++ b/dlls/api-ms-win-core-processthreads-l1-1-2/api-ms-win-core-processthreads-l1-1-2.spec
@@ -54,7 +54,7 @@
@ stdcall SetProcessShutdownParameters(long long) kernel32.SetProcessShutdownParameters
@ stdcall SetThreadContext(long ptr) kernel32.SetThreadContext
@ stdcall SetThreadIdealProcessorEx(long ptr ptr) kernel32.SetThreadIdealProcessorEx
-@ stub SetThreadInformation
+@ stdcall SetThreadInformation(long long ptr long) kernel32.SetThreadInformation
@ stdcall SetThreadPriority(long long) kernel32.SetThreadPriority
@ stdcall SetThreadPriorityBoost(long long) kernel32.SetThreadPriorityBoost
@ stdcall SetThreadStackGuarantee(ptr) kernel32.SetThreadStackGuarantee
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
index 812ffc6ad4..ee8c083044 100644
--- a/dlls/kernel32/kernel32.spec
+++ b/dlls/kernel32/kernel32.spec
@@ -1451,6 +1451,7 @@
@ stdcall SetThreadGroupAffinity(long ptr ptr)
@ stdcall SetThreadIdealProcessor(long long)
@ stdcall SetThreadIdealProcessorEx(long ptr ptr)
+@ stdcall SetThreadInformation(long long ptr long)
@ stdcall SetThreadLocale(long)
@ stdcall SetThreadPreferredUILanguages(long ptr ptr)
@ stdcall SetThreadPriority(long long)
diff --git a/dlls/kernel32/thread.c b/dlls/kernel32/thread.c
index a86ad3443a..5fc47bf298 100644
--- a/dlls/kernel32/thread.c
+++ b/dlls/kernel32/thread.c
@@ -35,6 +35,7 @@
#include "winbase.h"
#include "winerror.h"
#include "winternl.h"
+#include "processthreadsapi.h"
#include "wine/exception.h"
#include "wine/library.h"
#include "wine/server.h"
@@ -1180,3 +1181,13 @@ BOOL WINAPI TrySubmitThreadpoolCallback( PTP_SIMPLE_CALLBACK callback, PVOID use
return TRUE;
}
+
+/**********************************************************************
+ * SetThreadInformation [KERNEL32.@]
+ */
+BOOL WINAPI SetThreadInformation(HANDLE hthread, THREAD_INFORMATION_CLASS thread_information_class, void *thread_information, DWORD thread_information_size)
+{
+ FIXME("(%p, %d, %p, %d): stub\n", hthread, thread_information_class, thread_information, thread_information_size);
+
+ return TRUE;
+}
diff --git a/dlls/kernelbase/kernelbase.spec b/dlls/kernelbase/kernelbase.spec
index f07ab7bf9a..0559dc6f31 100644
--- a/dlls/kernelbase/kernelbase.spec
+++ b/dlls/kernelbase/kernelbase.spec
@@ -1483,7 +1483,7 @@
@ stdcall SetThreadGroupAffinity(long ptr ptr) kernel32.SetThreadGroupAffinity
@ stdcall SetThreadIdealProcessor(long long) kernel32.SetThreadIdealProcessor
@ stdcall SetThreadIdealProcessorEx(long ptr ptr) kernel32.SetThreadIdealProcessorEx
-# @ stub SetThreadInformation
+@ stdcall SetThreadInformation(long long ptr long) kernel32.SetThreadInformation
@ stdcall SetThreadLocale(long) kernel32.SetThreadLocale
@ stdcall SetThreadPreferredUILanguages(long ptr ptr) kernel32.SetThreadPreferredUILanguages
@ stdcall SetThreadPriority(long long) kernel32.SetThreadPriority
diff --git a/include/processthreadsapi.h b/include/processthreadsapi.h
new file mode 100644
index 0000000000..f14cefe5d2
--- /dev/null
+++ b/include/processthreadsapi.h
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2018 Fabian Maurer
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#ifndef __WINE_PROCESSTHREADSAPI_H
+#define __WINE_PROCESSTHREADSAPI_H
+
+typedef enum _THREAD_INFORMATION_CLASS {
+ ThreadMemoryPriority,
+ ThreadAbsoluteCpuPriority,
+ ThreadDynamicCodePolicy,
+ ThreadPowerThrottling,
+ ThreadInformationClassMax
+} THREAD_INFORMATION_CLASS;
+
+#endif /* __WINE_PROCESSTHREADSAPI_H */
+
--
2.18.0
More information about the wine-devel
mailing list