mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-06 09:55:50 +00:00
ntdll: Replace the __wine_unix_call() syscall by a function calling through the dispatcher.
This commit is contained in:
parent
7e680152d4
commit
ee147d9216
|
@ -3192,6 +3192,16 @@ NTSTATUS WINAPI __wine_ctrl_routine( void *arg )
|
|||
RtlExitUserThread( ret );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* __wine_unix_call
|
||||
*/
|
||||
NTSTATUS WINAPI __wine_unix_call( unixlib_handle_t handle, unsigned int code, void *args )
|
||||
{
|
||||
return __wine_unix_call_dispatcher( handle, code, args );
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************
|
||||
* LdrLoadDll (NTDLL.@)
|
||||
*/
|
||||
|
|
|
@ -1690,7 +1690,7 @@
|
|||
@ cdecl -syscall wine_server_handle_to_fd(long long ptr ptr)
|
||||
|
||||
# Unix interface
|
||||
@ stdcall -syscall __wine_unix_call(int64 long ptr)
|
||||
@ stdcall __wine_unix_call(int64 long ptr)
|
||||
@ stdcall -syscall __wine_unix_spawnvp(long ptr)
|
||||
@ stdcall __wine_ctrl_routine(ptr)
|
||||
@ extern -private __wine_syscall_dispatcher
|
||||
|
|
|
@ -356,7 +356,6 @@ static void * const syscalls[] =
|
|||
NtWriteVirtualMemory,
|
||||
NtYieldExecution,
|
||||
__wine_dbg_write,
|
||||
__wine_unix_call,
|
||||
__wine_unix_spawnvp,
|
||||
wine_nt_to_unix_file_name,
|
||||
wine_server_call,
|
||||
|
@ -1347,15 +1346,6 @@ NTSTATUS ntdll_init_syscalls( ULONG id, SYSTEM_SERVICE_TABLE *table, void **disp
|
|||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* __wine_unix_call
|
||||
*/
|
||||
NTSTATUS WINAPI __wine_unix_call( unixlib_handle_t handle, unsigned int code, void *args )
|
||||
{
|
||||
return ((unixlib_entry_t*)(UINT_PTR)handle)[code]( args );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* load_so_dll
|
||||
*/
|
||||
|
|
|
@ -48,6 +48,6 @@ enum ntdll_unix_funcs
|
|||
|
||||
extern unixlib_handle_t ntdll_unix_handle;
|
||||
|
||||
#define NTDLL_UNIX_CALL( func, params ) __wine_unix_call( ntdll_unix_handle, unix_ ## func, params )
|
||||
#define NTDLL_UNIX_CALL( func, params ) __wine_unix_call_dispatcher( ntdll_unix_handle, unix_ ## func, params )
|
||||
|
||||
#endif /* __NTDLL_UNIXLIB_H */
|
||||
|
|
|
@ -320,19 +320,6 @@ NTSTATUS WINAPI wow64___wine_dbg_write( UINT *args )
|
|||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* wow64___wine_unix_call
|
||||
*/
|
||||
NTSTATUS WINAPI wow64___wine_unix_call( UINT *args )
|
||||
{
|
||||
unixlib_handle_t handle = get_ulong64( &args );
|
||||
unsigned int code = get_ulong( &args );
|
||||
void *args_ptr = get_ptr( &args );
|
||||
|
||||
return __wine_unix_call( handle, code, args_ptr );
|
||||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* wow64___wine_unix_spawnvp
|
||||
*/
|
||||
|
|
|
@ -255,7 +255,6 @@
|
|||
SYSCALL_ENTRY( NtWriteVirtualMemory ) \
|
||||
SYSCALL_ENTRY( NtYieldExecution ) \
|
||||
SYSCALL_ENTRY( __wine_dbg_write ) \
|
||||
SYSCALL_ENTRY( __wine_unix_call ) \
|
||||
SYSCALL_ENTRY( __wine_unix_spawnvp ) \
|
||||
SYSCALL_ENTRY( wine_nt_to_unix_file_name ) \
|
||||
SYSCALL_ENTRY( wine_server_call ) \
|
||||
|
|
Loading…
Reference in a new issue