Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
57281794
Commit
57281794
authored
Aug 10, 2021
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: Add a custom type for the Unix functions table handle.
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
d91d05b8
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
7 additions
and
6 deletions
+7
-6
loader.c
dlls/ntdll/unix/loader.c
+1
-1
virtual.c
dlls/ntdll/unix/virtual.c
+2
-2
winternl.h
include/winternl.h
+4
-3
No files found.
dlls/ntdll/unix/loader.c
View file @
57281794
...
...
@@ -1141,7 +1141,7 @@ static NTSTATUS CDECL init_unix_lib( void *module, DWORD reason, const void *ptr
/***********************************************************************
* __wine_unix_call
*/
NTSTATUS
CDECL
__wine_unix_call
(
UINT64
handle
,
unsigned
int
code
,
void
*
args
)
NTSTATUS
CDECL
__wine_unix_call
(
unixlib_handle_t
handle
,
unsigned
int
code
,
void
*
args
)
{
return
((
unixlib_entry_t
*
)(
UINT_PTR
)
handle
)[
code
](
args
);
}
...
...
dlls/ntdll/unix/virtual.c
View file @
57281794
...
...
@@ -4345,14 +4345,14 @@ NTSTATUS WINAPI NtQueryVirtualMemory( HANDLE process, LPCVOID addr,
case
MemoryWineUnixFuncs
:
case
MemoryWineUnixWow64Funcs
:
if
(
len
!=
sizeof
(
UINT64
))
return
STATUS_INFO_LENGTH_MISMATCH
;
if
(
len
!=
sizeof
(
unixlib_handle_t
))
return
STATUS_INFO_LENGTH_MISMATCH
;
if
(
process
==
GetCurrentProcess
())
{
void
*
module
=
(
void
*
)
addr
;
void
*
funcs
=
NULL
;
status
=
get_builtin_unix_funcs
(
module
,
info_class
==
MemoryWineUnixWow64Funcs
,
&
funcs
);
if
(
!
status
)
*
(
UINT64
*
)
buffer
=
(
UINT_PTR
)
funcs
;
if
(
!
status
)
*
(
unixlib_handle_t
*
)
buffer
=
(
UINT_PTR
)
funcs
;
return
status
;
}
return
STATUS_INVALID_HANDLE
;
...
...
include/winternl.h
View file @
57281794
...
...
@@ -4612,11 +4612,12 @@ static inline PLIST_ENTRY RemoveTailList(PLIST_ENTRY le)
#ifdef __WINESRC__
typedef
NTSTATUS
(
*
unixlib_entry_t
)(
void
*
args
);
typedef
UINT64
unixlib_handle_t
;
/* Wine internal functions */
extern
NTSTATUS
CDECL
__wine_init_unix_lib
(
HMODULE
module
,
DWORD
reason
,
const
void
*
ptr_in
,
void
*
ptr_out
);
extern
NTSTATUS
CDECL
__wine_unix_call
(
UINT64
handle
,
unsigned
int
code
,
void
*
args
);
typedef
NTSTATUS
(
*
unixlib_entry_t
)(
void
*
args
);
extern
NTSTATUS
CDECL
__wine_unix_call
(
unixlib_handle_t
handle
,
unsigned
int
code
,
void
*
args
);
/* The thread information for 16-bit threads */
/* NtCurrentTeb()->SubSystemTib points to this */
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment