Signed-off-by: Nikolay Sivov nsivov@codeweavers.com ---
v2: add unregister stub as well.
dlls/user32/misc.c | 18 ++++++++++++++++++ dlls/user32/user32.spec | 2 ++ include/winuser.h | 2 ++ 3 files changed, 22 insertions(+)
diff --git a/dlls/user32/misc.c b/dlls/user32/misc.c index 25d0b676667..04ba0a8810c 100644 --- a/dlls/user32/misc.c +++ b/dlls/user32/misc.c @@ -443,6 +443,24 @@ BOOL WINAPI UnregisterPowerSettingNotification(HPOWERNOTIFY handle) return TRUE; }
+/********************************************************************** + * RegisterSuspendResumeNotification (USER32.@) + */ +HPOWERNOTIFY WINAPI RegisterSuspendResumeNotification(HANDLE recipient, DWORD flags) +{ + FIXME("%p, %#x: stub.\n", recipient, flags); + return (HPOWERNOTIFY)0xdeadbeef; +} + +/********************************************************************** + * UnregisterSuspendResumeNotification (USER32.@) + */ +BOOL WINAPI UnregisterSuspendResumeNotification(HPOWERNOTIFY handle) +{ + FIXME("%p: stub.\n", handle); + return TRUE; +} + /***************************************************************************** * GetGestureConfig (USER32.@) */ diff --git a/dlls/user32/user32.spec b/dlls/user32/user32.spec index aae124ebdcc..5d0c6746a51 100644 --- a/dlls/user32/user32.spec +++ b/dlls/user32/user32.spec @@ -608,6 +608,7 @@ @ stdcall RegisterRawInputDevices(ptr long long) @ stdcall RegisterServicesProcess(long) @ stdcall RegisterShellHookWindow (long) +@ stdcall RegisterSuspendResumeNotification(long long) @ stdcall RegisterSystemThread(long long) @ stdcall RegisterTasklist (long) @ stdcall RegisterTouchHitTestingWindow(long long) @@ -783,6 +784,7 @@ @ stdcall UnregisterHotKey(long long) NtUserUnregisterHotKey # @ stub UnregisterMessagePumpHook @ stdcall UnregisterPowerSettingNotification(ptr) +@ stdcall UnregisterSuspendResumeNotification(ptr) @ stdcall UnregisterTouchWindow(long) @ stdcall UnregisterUserApiHook() @ stdcall UpdateLayeredWindow(long long ptr ptr long ptr long ptr long) diff --git a/include/winuser.h b/include/winuser.h index 898c9034e33..bb585efd16d 100644 --- a/include/winuser.h +++ b/include/winuser.h @@ -4128,6 +4128,7 @@ WINUSERAPI BOOL WINAPI RegisterPointerDeviceNotifications(HWND,BOOL); WINUSERAPI HPOWERNOTIFY WINAPI RegisterPowerSettingNotification(HANDLE,LPCGUID,DWORD); WINUSERAPI BOOL WINAPI RegisterRawInputDevices(PRAWINPUTDEVICE,UINT,UINT); WINUSERAPI BOOL WINAPI RegisterShellHookWindow(HWND); +WINUSERAPI HPOWERNOTIFY WINAPI RegisterSuspendResumeNotification(HANDLE,DWORD); WINUSERAPI BOOL WINAPI RegisterTouchWindow(HWND,ULONG); WINUSERAPI UINT WINAPI RegisterWindowMessageA(LPCSTR); WINUSERAPI UINT WINAPI RegisterWindowMessageW(LPCWSTR); @@ -4300,6 +4301,7 @@ WINUSERAPI BOOL WINAPI UnregisterClassW(LPCWSTR,HINSTANCE); WINUSERAPI BOOL WINAPI UnregisterDeviceNotification(HDEVNOTIFY); WINUSERAPI BOOL WINAPI UnregisterHotKey(HWND,INT); WINUSERAPI BOOL WINAPI UnregisterPowerSettingNotification(HPOWERNOTIFY); +WINUSERAPI BOOL WINAPI UnregisterSuspendResumeNotification(HPOWERNOTIFY); WINUSERAPI BOOL WINAPI UnregisterTouchWindow(HWND); WINUSERAPI BOOL WINAPI UpdateWindow(HWND); WINUSERAPI BOOL WINAPI UserHandleGrantAccess(HANDLE,HANDLE,BOOL);
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=111563
Your paranoid android.
=== debian11 (32 bit report) ===
user32: input.c:2160: Test failed: GetRawInputBuffer returned 5 input.c:2182: Test failed: Unexpected rawinput data: -2 input.c:2160: Test failed: GetRawInputBuffer returned 10 input.c:2162: Test failed: Unexpected rawinput data: 0 input.c:2164: Test failed: Unexpected rawinput data: -9 input.c:1628: Test failed: wrong position 2, expected 64x128 got 63x126 input.c:1628: Test failed: wrong position 18, expected 48x96 got 54x108 input.c:1628: Test failed: wrong position 19, expected 47x94 got 57x114 input.c:1628: Test failed: wrong position 20, expected 46x92 got 53x106 input.c:1628: Test failed: wrong position 21, expected 45x90 got 56x112 input.c:1628: Test failed: wrong position 23, expected 43x86 got 51x102 input.c:1628: Test failed: wrong position 24, expected 42x84 got 55x110 input.c:1628: Test failed: wrong position 30, expected 36x72 got 48x96 input.c:1628: Test failed: wrong position 33, expected 33x66 got 50x100 input.c:1628: Test failed: wrong position 34, expected 32x64 got 46x92 input.c:1628: Test failed: wrong position 35, expected 31x62 got 45x90 input.c:1628: Test failed: wrong position 37, expected 29x58 got 44x88 input.c:1628: Test failed: wrong position 38, expected 28x56 got 48x96 input.c:1628: Test failed: wrong position 49, expected 17x34 got 39x78 input.c:1628: Test failed: wrong position 58, expected 8x16 got 34x68 input.c:1628: Test failed: wrong position 59, expected 7x14 got 37x74 input.c:1628: Test failed: wrong position 60, expected 6x12 got 33x66 input.c:1628: Test failed: wrong position 61, expected 5x10 got 32x64 input.c:1628: Test failed: wrong position 62, expected 4x8 got 36x72
=== debian11 (32 bit Chinese:China report) ===
user32: input.c:2163: Test failed: Unexpected rawinput data: -8 input.c:2164: Test failed: Unexpected rawinput data: 5 input.c:1628: Test failed: wrong position 2, expected 64x128 got 62x124 input.c:1628: Test failed: wrong position 18, expected 48x96 got 58x116 input.c:1628: Test failed: wrong position 23, expected 43x86 got 52x104 input.c:1628: Test failed: wrong position 27, expected 39x78 got 50x100 input.c:1628: Test failed: wrong position 31, expected 35x70 got 48x96 input.c:1628: Test failed: wrong position 39, expected 27x54 got 44x88 input.c:1628: Test failed: wrong position 50, expected 16x32 got 38x76
=== debian11 (32 bit WoW report) ===
user32: input.c:2162: Test failed: Unexpected rawinput data: 4 input.c:2163: Test failed: Unexpected rawinput data: -8 input.c:2217: Test failed: Unexpected rawinput data: 2 input.c:1628: Test failed: wrong position 5, expected 61x122 got 62x124 input.c:1628: Test failed: wrong position 7, expected 59x118 got 61x122 input.c:1628: Test failed: wrong position 9, expected 57x114 got 60x120 input.c:1628: Test failed: wrong position 11, expected 55x110 got 59x118 input.c:1628: Test failed: wrong position 13, expected 53x106 got 58x116 input.c:1628: Test failed: wrong position 15, expected 51x102 got 57x114 input.c:1628: Test failed: wrong position 16, expected 50x100 got 58x116 input.c:1628: Test failed: wrong position 17, expected 49x98 got 56x112 input.c:1628: Test failed: wrong position 21, expected 45x90 got 54x108 input.c:1628: Test failed: wrong position 23, expected 43x86 got 53x106 input.c:1628: Test failed: wrong position 25, expected 41x82 got 52x104 input.c:1628: Test failed: wrong position 29, expected 37x74 got 50x100 input.c:1628: Test failed: wrong position 30, expected 36x72 got 51x102 input.c:1628: Test failed: wrong position 31, expected 35x70 got 49x98 input.c:1628: Test failed: wrong position 33, expected 33x66 got 48x96 input.c:1628: Test failed: wrong position 35, expected 31x62 got 47x94 input.c:1628: Test failed: wrong position 36, expected 30x60 got 46x92 input.c:1628: Test failed: wrong position 38, expected 28x56 got 47x94 input.c:1628: Test failed: wrong position 39, expected 27x54 got 45x90 input.c:1628: Test failed: wrong position 42, expected 24x48 got 45x90 input.c:1628: Test failed: wrong position 43, expected 23x46 got 43x86 input.c:1628: Test failed: wrong position 44, expected 22x44 got 44x88 input.c:1628: Test failed: wrong position 45, expected 21x42 got 42x84 input.c:1628: Test failed: wrong position 46, expected 20x40 got 41x82 input.c:1628: Test failed: wrong position 48, expected 18x36 got 42x84 input.c:1628: Test failed: wrong position 49, expected 17x34 got 40x80 input.c:1628: Test failed: wrong position 51, expected 15x30 got 39x78 input.c:1628: Test failed: wrong position 52, expected 14x28 got 38x76 input.c:1628: Test failed: wrong position 61, expected 5x10 got 34x68 input.c:1628: Test failed: wrong position 62, expected 4x8 got 35x70 win.c:11361: Test failed: expected 02030140, got 003500F6
=== debian11 (64 bit WoW report) ===
user32: input.c:2182: Test failed: Unexpected rawinput data: 7 input.c:2163: Test failed: Unexpected rawinput data: -6 input.c:1623: Test failed: expected to get 64 mouse move points but got 63 input.c:1628: Test failed: wrong position 2, expected 64x128 got 61x122 input.c:1628: Test failed: wrong position 5, expected 61x122 got 64x128 input.c:1628: Test failed: wrong position 8, expected 58x116 got 63x126 input.c:1628: Test failed: wrong position 10, expected 56x112 got 62x124 input.c:1628: Test failed: wrong position 12, expected 54x108 got 61x122 input.c:1628: Test failed: wrong position 14, expected 52x104 got 60x120 input.c:1628: Test failed: wrong position 17, expected 49x98 got 59x118 input.c:1628: Test failed: wrong position 19, expected 47x94 got 58x116 input.c:1628: Test failed: wrong position 20, expected 46x92 got 51x102 input.c:1628: Test failed: wrong position 21, expected 45x90 got 57x114 input.c:1628: Test failed: wrong position 23, expected 43x86 got 56x112 input.c:1628: Test failed: wrong position 25, expected 41x82 got 55x110 input.c:1628: Test failed: wrong position 27, expected 39x78 got 54x108 input.c:1628: Test failed: wrong position 29, expected 37x74 got 53x106 input.c:1628: Test failed: wrong position 31, expected 35x70 got 45x90 input.c:1628: Test failed: wrong position 32, expected 34x68 got 52x104 input.c:1628: Test failed: wrong position 33, expected 33x66 got 44x88 input.c:1628: Test failed: wrong position 34, expected 32x64 got 51x102 input.c:1628: Test failed: wrong position 35, expected 31x62 got 43x86 input.c:1628: Test failed: wrong position 36, expected 30x60 got 50x100 input.c:1628: Test failed: wrong position 37, expected 29x58 got 42x84 input.c:1628: Test failed: wrong position 38, expected 28x56 got 49x98 input.c:1628: Test failed: wrong position 39, expected 27x54 got 41x82 input.c:1628: Test failed: wrong position 40, expected 26x52 got 48x96 input.c:1628: Test failed: wrong position 41, expected 25x50 got 40x80 input.c:1628: Test failed: wrong position 42, expected 24x48 got 39x78 input.c:1628: Test failed: wrong position 43, expected 23x46 got 47x94 input.c:1628: Test failed: wrong position 44, expected 22x44 got 38x76 input.c:1628: Test failed: wrong position 45, expected 21x42 got 46x92 input.c:1628: Test failed: wrong position 46, expected 20x40 got 37x74 input.c:1628: Test failed: wrong position 47, expected 19x38 got 45x90 input.c:1628: Test failed: wrong position 48, expected 18x36 got 36x72 input.c:1628: Test failed: wrong position 49, expected 17x34 got 35x70 input.c:1628: Test failed: wrong position 50, expected 16x32 got 44x88 input.c:1628: Test failed: wrong position 51, expected 15x30 got 34x68 input.c:1628: Test failed: wrong position 52, expected 14x28 got 43x86 input.c:1628: Test failed: wrong position 53, expected 13x26 got 33x66 input.c:1628: Test failed: wrong position 54, expected 12x24 got 42x84 input.c:1628: Test failed: wrong position 55, expected 11x22 got 41x82 input.c:1628: Test failed: wrong position 56, expected 10x20 got 40x80 input.c:1628: Test failed: wrong position 57, expected 9x18 got 39x78 input.c:1628: Test failed: wrong position 58, expected 8x16 got 38x76