From: Jacek Caban jacek@codeweavers.com
--- dlls/win32u/gdiobj.c | 5 ---- dlls/win32u/syscall.c | 5 ++++ dlls/win32u/win32u.spec | 10 ++++---- dlls/win32u/win32u_private.h | 5 ---- dlls/win32u/wrappers.c | 30 ----------------------- dlls/wow64win/syscall.h | 5 ++++ dlls/wow64win/user.c | 46 ++++++++++++++++++++++++++++++++++++ 7 files changed, 61 insertions(+), 45 deletions(-)
diff --git a/dlls/win32u/gdiobj.c b/dlls/win32u/gdiobj.c index 0c7693d24ed..c5316137df4 100644 --- a/dlls/win32u/gdiobj.c +++ b/dlls/win32u/gdiobj.c @@ -1153,11 +1153,6 @@ static struct unix_funcs unix_funcs = NtUserSetClassWord, NtUserSetLayeredWindowAttributes, NtUserSetParent, - NtUserSetWindowLong, - NtUserSetWindowLongPtr, - NtUserSetWindowPlacement, - NtUserSetWindowRgn, - NtUserSetWindowWord, NtUserShowWindow, NtUserShowWindowAsync, NtUserSystemParametersInfo, diff --git a/dlls/win32u/syscall.c b/dlls/win32u/syscall.c index f6b044d8c38..562febcf7e0 100644 --- a/dlls/win32u/syscall.c +++ b/dlls/win32u/syscall.c @@ -259,7 +259,12 @@ static void * const syscalls[] = NtUserSetThreadDesktop, NtUserSetTimer, NtUserSetWinEventHook, + NtUserSetWindowLong, + NtUserSetWindowLongPtr, + NtUserSetWindowPlacement, NtUserSetWindowPos, + NtUserSetWindowRgn, + NtUserSetWindowWord, NtUserSetWindowsHookEx, NtUserShowCaret, NtUserShowCursor, diff --git a/dlls/win32u/win32u.spec b/dlls/win32u/win32u.spec index 8ddc4e0c9f7..18eb5e77d9c 100644 --- a/dlls/win32u/win32u.spec +++ b/dlls/win32u/win32u.spec @@ -1246,15 +1246,15 @@ @ stub NtUserSetWindowFNID @ stub NtUserSetWindowFeedbackSetting @ stub NtUserSetWindowGroup -@ stdcall NtUserSetWindowLong(long long long long) -@ stdcall NtUserSetWindowLongPtr(long long long long) -@ stdcall NtUserSetWindowPlacement(long ptr) +@ stdcall -syscall NtUserSetWindowLong(long long long long) +@ stdcall -syscall NtUserSetWindowLongPtr(long long long long) +@ stdcall -syscall NtUserSetWindowPlacement(long ptr) @ stdcall -syscall NtUserSetWindowPos(long long long long long long long) -@ stdcall NtUserSetWindowRgn(long long long) +@ stdcall -syscall NtUserSetWindowRgn(long long long) @ stub NtUserSetWindowRgnEx @ stub NtUserSetWindowShowState @ stub NtUserSetWindowStationUser -@ stdcall NtUserSetWindowWord(long long long) +@ stdcall -syscall NtUserSetWindowWord(long long long) @ stub NtUserSetWindowsHookAW @ stdcall -syscall NtUserSetWindowsHookEx(ptr ptr long long ptr long) @ stdcall -syscall NtUserShowCaret(long) diff --git a/dlls/win32u/win32u_private.h b/dlls/win32u/win32u_private.h index aec24b73f53..582facc0ddf 100644 --- a/dlls/win32u/win32u_private.h +++ b/dlls/win32u/win32u_private.h @@ -209,11 +209,6 @@ struct unix_funcs WORD (WINAPI *pNtUserSetClassWord)( HWND hwnd, INT offset, WORD newval ); BOOL (WINAPI *pNtUserSetLayeredWindowAttributes)( HWND hwnd, COLORREF key, BYTE alpha, DWORD flags ); HWND (WINAPI *pNtUserSetParent)( HWND hwnd, HWND parent ); - LONG (WINAPI *pNtUserSetWindowLong)( HWND hwnd, INT offset, LONG newval, BOOL ansi ); - LONG_PTR (WINAPI *pNtUserSetWindowLongPtr)( HWND hwnd, INT offset, LONG_PTR newval, BOOL ansi ); - BOOL (WINAPI *pNtUserSetWindowPlacement)( HWND hwnd, const WINDOWPLACEMENT *wpl ); - int (WINAPI *pNtUserSetWindowRgn)( HWND hwnd, HRGN hrgn, BOOL redraw ); - WORD (WINAPI *pNtUserSetWindowWord)( HWND hwnd, INT offset, WORD newval ); BOOL (WINAPI *pNtUserShowWindow)( HWND hwnd, INT cmd ); BOOL (WINAPI *pNtUserShowWindowAsync)( HWND hwnd, INT cmd ); BOOL (WINAPI *pNtUserSystemParametersInfo)( UINT action, UINT val, PVOID ptr, UINT winini ); diff --git a/dlls/win32u/wrappers.c b/dlls/win32u/wrappers.c index b2b143cc136..290c4a51f1d 100644 --- a/dlls/win32u/wrappers.c +++ b/dlls/win32u/wrappers.c @@ -826,36 +826,6 @@ HWND WINAPI NtUserSetParent( HWND hwnd, HWND parent ) return unix_funcs->pNtUserSetParent( hwnd, parent ); }
-LONG WINAPI NtUserSetWindowLong( HWND hwnd, INT offset, LONG newval, BOOL ansi ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetWindowLong( hwnd, offset, newval, ansi ); -} - -LONG_PTR WINAPI NtUserSetWindowLongPtr( HWND hwnd, INT offset, LONG_PTR newval, BOOL ansi ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetWindowLongPtr( hwnd, offset, newval, ansi ); -} - -BOOL WINAPI NtUserSetWindowPlacement( HWND hwnd, const WINDOWPLACEMENT *wpl ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetWindowPlacement( hwnd, wpl ); -} - -int WINAPI NtUserSetWindowRgn( HWND hwnd, HRGN hrgn, BOOL redraw ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetWindowRgn( hwnd, hrgn, redraw ); -} - -WORD WINAPI NtUserSetWindowWord( HWND hwnd, INT offset, WORD newval ) -{ - if (!unix_funcs) return 0; - return unix_funcs->pNtUserSetWindowWord( hwnd, offset, newval ); -} - BOOL WINAPI NtUserShowWindowAsync( HWND hwnd, INT cmd ) { if (!unix_funcs) return FALSE; diff --git a/dlls/wow64win/syscall.h b/dlls/wow64win/syscall.h index 3a2cdf3f8ec..6a42e1ee7d7 100644 --- a/dlls/wow64win/syscall.h +++ b/dlls/wow64win/syscall.h @@ -246,7 +246,12 @@ SYSCALL_ENTRY( NtUserSetThreadDesktop ) \ SYSCALL_ENTRY( NtUserSetTimer ) \ SYSCALL_ENTRY( NtUserSetWinEventHook ) \ + SYSCALL_ENTRY( NtUserSetWindowLong ) \ + SYSCALL_ENTRY( NtUserSetWindowLongPtr ) \ + SYSCALL_ENTRY( NtUserSetWindowPlacement ) \ SYSCALL_ENTRY( NtUserSetWindowPos ) \ + SYSCALL_ENTRY( NtUserSetWindowRgn ) \ + SYSCALL_ENTRY( NtUserSetWindowWord ) \ SYSCALL_ENTRY( NtUserSetWindowsHookEx ) \ SYSCALL_ENTRY( NtUserShowCaret ) \ SYSCALL_ENTRY( NtUserShowCursor ) \ diff --git a/dlls/wow64win/user.c b/dlls/wow64win/user.c index a6acccf5089..12ede1397c1 100644 --- a/dlls/wow64win/user.c +++ b/dlls/wow64win/user.c @@ -1959,6 +1959,34 @@ NTSTATUS WINAPI wow64_NtUserSetWinEventHook( UINT *args ) return HandleToUlong( ret ); }
+NTSTATUS WINAPI wow64_NtUserSetWindowLong( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + INT offset = get_ulong( &args ); + LONG newval = get_ulong( &args ); + BOOL ansi = get_ulong( &args ); + + return NtUserSetWindowLong( hwnd, offset, newval, ansi ); +} + +NTSTATUS WINAPI wow64_NtUserSetWindowLongPtr( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + INT offset = get_ulong( &args ); + LONG_PTR newval = get_ulong( &args ); + BOOL ansi = get_ulong( &args ); + + return NtUserSetWindowLongPtr( hwnd, offset, newval, ansi ); +} + +NTSTATUS WINAPI wow64_NtUserSetWindowPlacement( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + const WINDOWPLACEMENT *wpl = get_ptr( &args ); + + return NtUserSetWindowPlacement( hwnd, wpl ); +} + NTSTATUS WINAPI wow64_NtUserSetWindowPos( UINT *args ) { HWND hwnd = get_handle( &args ); @@ -1972,6 +2000,24 @@ NTSTATUS WINAPI wow64_NtUserSetWindowPos( UINT *args ) return NtUserSetWindowPos( hwnd, after, x, y, cx, cy, flags ); }
+NTSTATUS WINAPI wow64_NtUserSetWindowRgn( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + HRGN hrgn = get_handle( &args ); + BOOL redraw = get_ulong( &args ); + + return NtUserSetWindowRgn( hwnd, hrgn, redraw ); +} + +NTSTATUS WINAPI wow64_NtUserSetWindowWord( UINT *args ) +{ + HWND hwnd = get_handle( &args ); + INT offset = get_ulong( &args ); + WORD newval = get_ulong( &args ); + + return NtUserSetWindowWord( hwnd, offset, newval ); +} + NTSTATUS WINAPI wow64_NtUserSetWindowsHookEx( UINT *args ) { HINSTANCE inst = get_handle( &args );