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
2c551a90
Commit
2c551a90
authored
Jun 06, 2018
by
Zebediah Figura
Committed by
Alexandre Julliard
Jun 12, 2018
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kernel32: Implement Wow64SetThreadContext().
Signed-off-by:
Zebediah Figura
<
zfigura@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
e50c507c
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
20 additions
and
1 deletion
+20
-1
kernel32.spec
dlls/kernel32/kernel32.spec
+1
-1
thread.c
dlls/kernel32/thread.c
+17
-0
winbase.h
include/winbase.h
+1
-0
winternl.h
include/winternl.h
+1
-0
No files found.
dlls/kernel32/kernel32.spec
View file @
2c551a90
...
...
@@ -1603,7 +1603,7 @@
@ stdcall Wow64GetThreadContext(long ptr)
# @ stub Wow64GetThreadSelectorEntry
@ stdcall Wow64RevertWow64FsRedirection(ptr)
# @ stub Wow64SetThreadContext
@ stdcall Wow64SetThreadContext(long ptr)
# @ stub Wow64SuspendThread
@ stdcall WriteConsoleA(long ptr long ptr ptr)
@ stdcall WriteConsoleInputA(long ptr long ptr)
...
...
dlls/kernel32/thread.c
View file @
2c551a90
...
...
@@ -236,6 +236,23 @@ BOOL WINAPI SetThreadContext( HANDLE handle, /* [in] Handle to thread
/***********************************************************************
* Wow64SetThreadContext [KERNEL32.@]
*/
BOOL
WINAPI
Wow64SetThreadContext
(
HANDLE
handle
,
const
WOW64_CONTEXT
*
context
)
{
#ifdef __i386__
NTSTATUS
status
=
NtSetContextThread
(
handle
,
(
const
CONTEXT
*
)
context
);
#elif defined(__x86_64__)
NTSTATUS
status
=
RtlWow64SetThreadContext
(
handle
,
context
);
#else
NTSTATUS
status
=
STATUS_NOT_IMPLEMENTED
;
FIXME
(
"not implemented on this platform
\n
"
);
#endif
if
(
status
)
SetLastError
(
RtlNtStatusToDosError
(
status
)
);
return
!
status
;
}
/***********************************************************************
* GetThreadContext [KERNEL32.@] Retrieves context of thread.
*
* RETURNS
...
...
include/winbase.h
View file @
2c551a90
...
...
@@ -2708,6 +2708,7 @@ WINBASEAPI BOOL WINAPI Wow64DisableWow64FsRedirection(PVOID*);
WINBASEAPI
BOOLEAN
WINAPI
Wow64EnableWow64FsRedirection
(
BOOLEAN
);
WINBASEAPI
BOOL
WINAPI
Wow64GetThreadContext
(
HANDLE
,
WOW64_CONTEXT
*
);
WINBASEAPI
BOOL
WINAPI
Wow64RevertWow64FsRedirection
(
PVOID
);
WINBASEAPI
BOOL
WINAPI
Wow64SetThreadContext
(
HANDLE
,
const
WOW64_CONTEXT
*
);
WINADVAPI
DWORD
WINAPI
WriteEncryptedFileRaw
(
PFE_IMPORT_FUNC
,
PVOID
,
PVOID
);
WINBASEAPI
BOOL
WINAPI
WriteFile
(
HANDLE
,
LPCVOID
,
DWORD
,
LPDWORD
,
LPOVERLAPPED
);
WINBASEAPI
BOOL
WINAPI
WriteFileEx
(
HANDLE
,
LPCVOID
,
DWORD
,
LPOVERLAPPED
,
LPOVERLAPPED_COMPLETION_ROUTINE
);
...
...
include/winternl.h
View file @
2c551a90
...
...
@@ -2838,6 +2838,7 @@ NTSYSAPI NTSTATUS WINAPI RtlWow64EnableFsRedirection(BOOLEAN);
NTSYSAPI
NTSTATUS
WINAPI
RtlWow64EnableFsRedirectionEx
(
ULONG
,
ULONG
*
);
#ifdef __x86_64__
NTSYSAPI
NTSTATUS
WINAPI
RtlWow64GetThreadContext
(
HANDLE
,
WOW64_CONTEXT
*
);
NTSYSAPI
NTSTATUS
WINAPI
RtlWow64SetThreadContext
(
HANDLE
,
const
WOW64_CONTEXT
*
);
#endif
NTSYSAPI
NTSTATUS
WINAPI
RtlWriteRegistryValue
(
ULONG
,
PCWSTR
,
PCWSTR
,
ULONG
,
PVOID
,
ULONG
);
NTSYSAPI
NTSTATUS
WINAPI
RtlZombifyActivationContext
(
HANDLE
);
...
...
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