Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com
-- v2: ntdll: Fake success for ThreadPowerThrottlingState include: Add THREAD_POWER_THROTTLING_STATE type winex11.drv: Define ControlMask when not available
From: Alistair Leslie-Hughes leslie_alistair@hotmail.com
Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- dlls/winex11.drv/keyboard.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c index 6157548474b..5bd8fb5ca43 100644 --- a/dlls/winex11.drv/keyboard.c +++ b/dlls/winex11.drv/keyboard.c @@ -64,6 +64,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(keyboard); WINE_DECLARE_DEBUG_CHANNEL(key);
+/* X.h defines ControlMask but conflicts with struct variable name */ +#ifndef ControlMask +#define ControlMask (1<<2) +#endif + static int min_keycode, max_keycode, keysyms_per_keycode; static KeySym *key_mapping; static WORD keyc2vkey[256], keyc2scan[256];
From: Alistair Leslie-Hughes leslie_alistair@hotmail.com
Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- include/processthreadsapi.h | 8 ++++++++ 1 file changed, 8 insertions(+)
diff --git a/include/processthreadsapi.h b/include/processthreadsapi.h index d266b7a727b..f74758d6807 100644 --- a/include/processthreadsapi.h +++ b/include/processthreadsapi.h @@ -37,6 +37,14 @@ typedef struct _MEMORY_PRIORITY_INFORMATION ULONG MemoryPriority; } MEMORY_PRIORITY_INFORMATION, *PMEMORY_PRIORITY_INFORMATION;
+#undef ControlMask +typedef struct _THREAD_POWER_THROTTLING_STATE +{ + ULONG Version; + ULONG ControlMask; + ULONG StateMask; +} THREAD_POWER_THROTTLING_STATE; + WINBASEAPI HRESULT WINAPI GetThreadDescription(HANDLE,PWSTR *); WINBASEAPI HRESULT WINAPI SetThreadDescription(HANDLE,PCWSTR); WINBASEAPI BOOL WINAPI SetThreadInformation(HANDLE,THREAD_INFORMATION_CLASS,LPVOID,DWORD);
From: Alistair Leslie-Hughes leslie_alistair@hotmail.com
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52956 Signed-off-by: Alistair Leslie-Hughes leslie_alistair@hotmail.com --- dlls/ntdll/unix/thread.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/dlls/ntdll/unix/thread.c b/dlls/ntdll/unix/thread.c index 6d937675bcb..15bb3be34b2 100644 --- a/dlls/ntdll/unix/thread.c +++ b/dlls/ntdll/unix/thread.c @@ -2255,6 +2255,12 @@ NTSTATUS WINAPI NtSetInformationThread( HANDLE handle, THREADINFOCLASS class, FIXME( "ThreadEnableAlignmentFaultFixup stub!\n" ); return STATUS_SUCCESS;
+ case ThreadPowerThrottlingState: + if (length != sizeof(THREAD_POWER_THROTTLING_STATE)) return STATUS_INFO_LENGTH_MISMATCH; + if (!data) return STATUS_ACCESS_VIOLATION; + FIXME( "ThreadPowerThrottling stub!\n" ); + return STATUS_SUCCESS; + case ThreadBasicInformation: case ThreadTimes: case ThreadPriority:
Hi,
While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check?
Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=115259
Your paranoid android.
=== debian11 (64 bit WoW report) ===
ntdll: change.c:277: Test failed: should be ready
Nikolay Sivov (@nsivov) commented about include/processthreadsapi.h:
ULONG MemoryPriority;
} MEMORY_PRIORITY_INFORMATION, *PMEMORY_PRIORITY_INFORMATION;
+#undef ControlMask +typedef struct _THREAD_POWER_THROTTLING_STATE +{
- ULONG Version;
- ULONG ControlMask;
- ULONG StateMask;
+} THREAD_POWER_THROTTLING_STATE;
This is not a conflict within SDK headers, so I think workaround should be applied to winex11 only.