Commit ca630fb6 authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

user32: Use syscall interface for NtUserCall* functions.

parent a23c1279
......@@ -1136,10 +1136,6 @@ static struct unix_funcs unix_funcs =
NtGdiUnrealizeObject,
NtGdiUpdateColors,
NtGdiWidenPath,
NtUserCallNextHookEx,
NtUserCallNoParam,
NtUserCallOneParam,
NtUserCallTwoParam,
NtUserChangeClipboardChain,
NtUserChangeDisplaySettings,
NtUserClipCursor,
......
......@@ -109,6 +109,10 @@ static void * const syscalls[] =
NtUserCallHwnd,
NtUserCallHwndParam,
NtUserCallMsgFilter,
NtUserCallNextHookEx,
NtUserCallNoParam,
NtUserCallOneParam,
NtUserCallTwoParam,
NtUserCheckMenuItem,
NtUserChildWindowFromPointEx,
NtUserCloseDesktop,
......
......@@ -777,10 +777,10 @@
@ stub NtUserCallHwndParamLockSafe
@ stub NtUserCallHwndSafe
@ stdcall -syscall NtUserCallMsgFilter(ptr long)
@ stdcall NtUserCallNextHookEx(long long long long)
@ stdcall NtUserCallNoParam(long)
@ stdcall NtUserCallOneParam(long long)
@ stdcall NtUserCallTwoParam(long long long)
@ stdcall -syscall NtUserCallNextHookEx(long long long long)
@ stdcall -syscall NtUserCallNoParam(long)
@ stdcall -syscall NtUserCallOneParam(long long)
@ stdcall -syscall NtUserCallTwoParam(long long long)
@ stub NtUserCanBrokerForceForeground
@ stdcall NtUserChangeClipboardChain(long long)
@ stdcall NtUserChangeDisplaySettings(ptr ptr long long ptr)
......
......@@ -186,10 +186,6 @@ struct unix_funcs
BOOL (WINAPI *pNtGdiUnrealizeObject)( HGDIOBJ obj );
BOOL (WINAPI *pNtGdiUpdateColors)( HDC hdc );
BOOL (WINAPI *pNtGdiWidenPath)( HDC hdc );
LRESULT (WINAPI *pNtUserCallNextHookEx)( HHOOK hhook, INT code, WPARAM wparam, LPARAM lparam );
ULONG_PTR (WINAPI *pNtUserCallNoParam)( ULONG code );
ULONG_PTR (WINAPI *pNtUserCallOneParam)( ULONG_PTR arg, ULONG code );
ULONG_PTR (WINAPI *pNtUserCallTwoParam)( ULONG_PTR arg1, ULONG_PTR arg2, ULONG code );
BOOL (WINAPI *pNtUserChangeClipboardChain)( HWND hwnd, HWND next );
LONG (WINAPI *pNtUserChangeDisplaySettings)( UNICODE_STRING *devname, DEVMODEW *devmode, HWND hwnd,
DWORD flags, void *lparam );
......
......@@ -725,30 +725,6 @@ NTSTATUS WINAPI NtGdiDdDDISetVidPnSourceOwner( const D3DKMT_SETVIDPNSOURCEOWNER
return unix_funcs->pNtGdiDdDDISetVidPnSourceOwner( desc );
}
LRESULT WINAPI NtUserCallNextHookEx( HHOOK hhook, INT code, WPARAM wparam, LPARAM lparam )
{
if (!unix_funcs) return 0;
return unix_funcs->pNtUserCallNextHookEx( hhook, code, wparam, lparam );
}
ULONG_PTR WINAPI NtUserCallNoParam( ULONG code )
{
if (!unix_funcs) return 0;
return unix_funcs->pNtUserCallNoParam( code );
}
ULONG_PTR WINAPI NtUserCallOneParam( ULONG_PTR arg, ULONG code )
{
if (!unix_funcs) return 0;
return unix_funcs->pNtUserCallOneParam( arg, code );
}
ULONG_PTR WINAPI NtUserCallTwoParam( ULONG_PTR arg1, ULONG_PTR arg2, ULONG code )
{
if (!unix_funcs) return 0;
return unix_funcs->pNtUserCallTwoParam( arg1, arg2, code );
}
BOOL WINAPI NtUserCloseClipboard(void)
{
if (!unix_funcs) return FALSE;
......
......@@ -96,6 +96,10 @@
SYSCALL_ENTRY( NtUserCallHwnd ) \
SYSCALL_ENTRY( NtUserCallHwndParam ) \
SYSCALL_ENTRY( NtUserCallMsgFilter ) \
SYSCALL_ENTRY( NtUserCallNextHookEx ) \
SYSCALL_ENTRY( NtUserCallNoParam ) \
SYSCALL_ENTRY( NtUserCallOneParam ) \
SYSCALL_ENTRY( NtUserCallTwoParam ) \
SYSCALL_ENTRY( NtUserCheckMenuItem ) \
SYSCALL_ENTRY( NtUserChildWindowFromPointEx ) \
SYSCALL_ENTRY( NtUserCloseDesktop ) \
......
......@@ -250,6 +250,42 @@ NTSTATUS WINAPI wow64_NtUserCallMsgFilter( UINT *args )
return ret;
}
NTSTATUS WINAPI wow64_NtUserCallNextHookEx( UINT *args )
{
HHOOK hhook = get_handle( &args );
INT code = get_ulong( &args );
WPARAM wparam = get_ulong( &args );
LPARAM lparam = get_ulong( &args );
return NtUserCallNextHookEx( hhook, code, wparam, lparam );
}
NTSTATUS WINAPI wow64_NtUserCallNoParam( UINT *args )
{
ULONG code = get_ulong( &args );
return NtUserCallNoParam( code );
}
NTSTATUS WINAPI wow64_NtUserCallOneParam( UINT *args )
{
ULONG_PTR arg = get_ulong( &args );
ULONG code = get_ulong( &args );
FIXME( "%Ix %lu\n", arg, code );
return 0;
}
NTSTATUS WINAPI wow64_NtUserCallTwoParam( UINT *args )
{
ULONG_PTR arg1 = get_ulong( &args );
ULONG_PTR arg2 = get_ulong( &args );
ULONG code = get_ulong( &args );
FIXME( "%Ix %Ix %lu\n", arg1, arg2, code );
return 0;
}
NTSTATUS WINAPI wow64_NtUserCheckMenuItem( UINT *args )
{
HMENU handle = get_handle( &args );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment