Module: wine Branch: master Commit: de9f285ee5fae8eb7046dc4385daebb3ff243032 URL: https://source.winehq.org/git/wine.git/?a=commit;h=de9f285ee5fae8eb7046dc438...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Jul 22 18:09:12 2021 +0200
wow64: Add thunks for the atom syscalls.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/wow64/syscall.c | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++ dlls/wow64/syscall.h | 4 ++++ 2 files changed, 57 insertions(+)
diff --git a/dlls/wow64/syscall.c b/dlls/wow64/syscall.c index 10abe7a8b38..5c9bc8d4f27 100644 --- a/dlls/wow64/syscall.c +++ b/dlls/wow64/syscall.c @@ -78,6 +78,19 @@ void __cdecl __wine_spec_unimplemented_stub( const char *module, const char *fun }
+/********************************************************************** + * wow64_NtAddAtom + */ +NTSTATUS WINAPI wow64_NtAddAtom( UINT *args ) +{ + const WCHAR *name = get_ptr( &args ); + ULONG len = get_ulong( &args ); + RTL_ATOM *atom = get_ptr( &args ); + + return NtAddAtom( name, len, atom ); +} + + /********************************************************************** * wow64_NtAllocateLocallyUniqueId */ @@ -114,6 +127,30 @@ NTSTATUS WINAPI wow64_NtClose( UINT *args ) }
+/********************************************************************** + * wow64_NtDeleteAtom + */ +NTSTATUS WINAPI wow64_NtDeleteAtom( UINT *args ) +{ + RTL_ATOM atom = get_ulong( &args ); + + return NtDeleteAtom( atom ); +} + + +/********************************************************************** + * wow64_NtFindAtom + */ +NTSTATUS WINAPI wow64_NtFindAtom( UINT *args ) +{ + const WCHAR *name = get_ptr( &args ); + ULONG len = get_ulong( &args ); + RTL_ATOM *atom = get_ptr( &args ); + + return NtFindAtom( name, len, atom ); +} + + /********************************************************************** * wow64_NtGetCurrentProcessorNumber */ @@ -146,6 +183,22 @@ NTSTATUS WINAPI wow64_NtQueryDefaultUILanguage( UINT *args ) }
+/********************************************************************** + * wow64_NtQueryInformationAtom + */ +NTSTATUS WINAPI wow64_NtQueryInformationAtom( UINT *args ) +{ + RTL_ATOM atom = get_ulong( &args ); + ATOM_INFORMATION_CLASS class = get_ulong( &args ); + void *info = get_ptr( &args ); + ULONG len = get_ulong( &args ); + ULONG *retlen = get_ptr( &args ); + + if (class != AtomBasicInformation) FIXME( "class %u not supported\n", class ); + return NtQueryInformationAtom( atom, class, info, len, retlen ); +} + + /********************************************************************** * wow64_NtQueryInstallUILanguage */ diff --git a/dlls/wow64/syscall.h b/dlls/wow64/syscall.h index 33e1670a391..583af0db476 100644 --- a/dlls/wow64/syscall.h +++ b/dlls/wow64/syscall.h @@ -22,12 +22,16 @@ #define __WOW64_SYSCALL_H
#define ALL_SYSCALLS \ + SYSCALL_ENTRY( NtAddAtom ) \ SYSCALL_ENTRY( NtAllocateLocallyUniqueId ) \ SYSCALL_ENTRY( NtAllocateUuids ) \ SYSCALL_ENTRY( NtClose ) \ + SYSCALL_ENTRY( NtDeleteAtom ) \ + SYSCALL_ENTRY( NtFindAtom ) \ SYSCALL_ENTRY( NtGetCurrentProcessorNumber ) \ SYSCALL_ENTRY( NtQueryDefaultLocale ) \ SYSCALL_ENTRY( NtQueryDefaultUILanguage ) \ + SYSCALL_ENTRY( NtQueryInformationAtom ) \ SYSCALL_ENTRY( NtQueryInstallUILanguage ) \ SYSCALL_ENTRY( NtSetDefaultLocale ) \ SYSCALL_ENTRY( NtSetDefaultUILanguage )