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
68e675d7
Commit
68e675d7
authored
Apr 22, 2020
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: The builtin load callback is no longer used for ntdll itself.
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
6f4272ce
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
7 additions
and
18 deletions
+7
-18
loader.c
dlls/ntdll/loader.c
+7
-18
No files found.
dlls/ntdll/loader.c
View file @
68e675d7
...
...
@@ -2058,21 +2058,14 @@ static NTSTATUS build_so_dll_module( const WCHAR *load_path, const UNICODE_STRIN
*/
static
void
load_builtin_callback
(
void
*
module
,
const
char
*
filename
)
{
static
const
WCHAR
emptyW
[
1
];
const
WCHAR
*
load_path
;
if
(
!
module
)
{
ERR
(
"could not map image for %s
\n
"
,
debugstr_us
(
builtin_load_info
->
filename
)
);
builtin_load_info
->
status
=
STATUS_NO_MEMORY
;
return
;
}
load_path
=
builtin_load_info
->
load_path
;
if
(
!
load_path
)
load_path
=
NtCurrentTeb
()
->
Peb
->
ProcessParameters
->
DllPath
.
Buffer
;
if
(
!
load_path
)
load_path
=
emptyW
;
builtin_load_info
->
status
=
build_so_dll_module
(
load_path
,
builtin_load_info
->
filename
,
module
,
builtin_load_info
->
status
=
build_so_dll_module
(
builtin_load_info
->
load_path
,
builtin_load_info
->
filename
,
module
,
0
,
&
builtin_load_info
->
wm
);
}
...
...
@@ -4482,7 +4475,7 @@ void __wine_process_init(void)
NTSTATUS
status
;
ANSI_STRING
func_name
;
UNICODE_STRING
nt_name
;
HMODULE
ntdll_module
;
HMODULE
ntdll_module
=
(
HMODULE
)((
__wine_spec_nt_header
.
OptionalHeader
.
ImageBase
+
0xffff
)
&
~
0xffff
)
;
INITIAL_TEB
stack
;
BOOL
suspend
;
SIZE_T
info_size
;
...
...
@@ -4512,15 +4505,11 @@ void __wine_process_init(void)
/* setup the load callback and create ntdll modref */
RtlInitUnicodeString
(
&
nt_name
,
ntdllW
);
default_load_info
.
filename
=
&
nt_name
;
map_so_dll
(
&
__wine_spec_nt_header
,
ntdll_module
);
status
=
build_so_dll_module
(
params
->
DllPath
.
Buffer
,
&
nt_name
,
ntdll_module
,
0
,
&
wm
);
assert
(
!
status
);
wine_dll_set_callback
(
load_builtin_callback
);
ntdll_module
=
(
HMODULE
)((
__wine_spec_nt_header
.
OptionalHeader
.
ImageBase
+
0xffff
)
&
~
0xffff
);
if
(
!
get_modref
(
ntdll_module
))
{
map_so_dll
(
&
__wine_spec_nt_header
,
ntdll_module
);
status
=
build_so_dll_module
(
params
->
DllPath
.
Buffer
,
&
nt_name
,
ntdll_module
,
0
,
&
wm
);
assert
(
!
status
);
}
RtlInitUnicodeString
(
&
nt_name
,
kernel32W
);
if
((
status
=
load_builtin_dll
(
params
->
DllPath
.
Buffer
,
&
nt_name
,
NULL
,
0
,
&
wm
))
!=
STATUS_SUCCESS
)
...
...
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