Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
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-cw
Commits
30e5f121
Commit
30e5f121
authored
Dec 10, 2019
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
kernel32: Remove __wine_kernel_init().
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
2e66404d
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
14 additions
and
30 deletions
+14
-30
kernel32.spec
dlls/kernel32/kernel32.spec
+1
-1
kernel_main.c
dlls/kernel32/kernel_main.c
+3
-0
process.c
dlls/kernel32/process.c
+7
-23
loader.c
dlls/ntdll/loader.c
+3
-6
No files found.
dlls/kernel32/kernel32.spec
View file @
30e5f121
...
...
@@ -1686,4 +1686,4 @@
@ cdecl wine_get_dos_file_name(str)
# Init code
@ cdecl __wine_
kernel_init
()
@ cdecl __wine_
start_process
()
dlls/kernel32/kernel_main.c
View file @
30e5f121
...
...
@@ -84,6 +84,9 @@ static BOOL process_attach( HMODULE module )
{
RTL_USER_PROCESS_PARAMETERS
*
params
=
NtCurrentTeb
()
->
Peb
->
ProcessParameters
;
kernel32_handle
=
module
;
RtlSetUnhandledExceptionFilter
(
UnhandledExceptionFilter
);
NtQuerySystemInformation
(
SystemBasicInformation
,
&
system_info
,
sizeof
(
system_info
),
NULL
);
/* Setup registry timezone information */
...
...
dlls/kernel32/process.c
View file @
30e5f121
...
...
@@ -104,9 +104,7 @@ __ASM_GLOBAL_FUNC( call_process_entry,
__ASM_CFI
(
".cfi_same_value %ebp
\n\t
"
)
"ret"
)
extern
void
WINAPI
start_process
(
LPTHREAD_START_ROUTINE
entry
,
PEB
*
peb
)
DECLSPEC_HIDDEN
;
extern
void
WINAPI
start_process_wrapper
(
void
)
DECLSPEC_HIDDEN
;
__ASM_GLOBAL_FUNC
(
start_process_wrapper
,
__ASM_GLOBAL_FUNC
(
__wine_start_process
,
"pushl %ebp
\n\t
"
__ASM_CFI
(
".cfi_adjust_cfa_offset 4
\n\t
"
)
__ASM_CFI
(
".cfi_rel_offset %ebp,0
\n\t
"
)
...
...
@@ -120,16 +118,18 @@ static inline DWORD call_process_entry( PEB *peb, LPTHREAD_START_ROUTINE entry )
{
return
entry
(
peb
);
}
static
void
WINAPI
start_process
(
LPTHREAD_START_ROUTINE
entry
,
PEB
*
peb
);
#define start_process_wrapper start_process
#endif
/***********************************************************************
* start_process
*
__wine_
start_process
*
* Startup routine of a new process. Runs on the new process stack.
*/
void
WINAPI
start_process
(
LPTHREAD_START_ROUTINE
entry
,
PEB
*
peb
)
#ifdef __i386__
void
CDECL
start_process
(
LPTHREAD_START_ROUTINE
entry
,
PEB
*
peb
)
#else
void
CDECL
__wine_start_process
(
LPTHREAD_START_ROUTINE
entry
,
PEB
*
peb
)
#endif
{
BOOL
being_debugged
;
...
...
@@ -162,22 +162,6 @@ void WINAPI start_process( LPTHREAD_START_ROUTINE entry, PEB *peb )
/***********************************************************************
* __wine_kernel_init
*
* Wine initialisation: load and start the main exe file.
*/
void
*
CDECL
__wine_kernel_init
(
void
)
{
static
const
WCHAR
kernel32W
[]
=
{
'k'
,
'e'
,
'r'
,
'n'
,
'e'
,
'l'
,
'3'
,
'2'
,
0
};
kernel32_handle
=
GetModuleHandleW
(
kernel32W
);
RtlSetUnhandledExceptionFilter
(
UnhandledExceptionFilter
);
return
start_process_wrapper
;
}
/***********************************************************************
* wait_input_idle
*
* Wrapper to call WaitForInputIdle USER function
...
...
dlls/ntdll/loader.c
View file @
30e5f121
...
...
@@ -4237,7 +4237,6 @@ void __wine_process_init(void)
NTSTATUS
status
;
ANSI_STRING
func_name
;
UNICODE_STRING
nt_name
;
void
*
(
CDECL
*
init_func
)(
void
);
INITIAL_TEB
stack
;
BOOL
suspend
;
SIZE_T
info_size
;
...
...
@@ -4273,11 +4272,11 @@ void __wine_process_init(void)
MESSAGE
(
"wine: could not load kernel32.dll, status %x
\n
"
,
status
);
exit
(
1
);
}
RtlInitAnsiString
(
&
func_name
,
"__wine_
kernel_init
"
);
RtlInitAnsiString
(
&
func_name
,
"__wine_
start_process
"
);
if
((
status
=
LdrGetProcedureAddress
(
wm
->
ldr
.
BaseAddress
,
&
func_name
,
0
,
(
void
**
)
&
init_func
))
!=
STATUS_SUCCESS
)
0
,
(
void
**
)
&
kernel32_start_process
))
!=
STATUS_SUCCESS
)
{
MESSAGE
(
"wine: could not find __wine_
kernel_init
in kernel32.dll, status %x
\n
"
,
status
);
MESSAGE
(
"wine: could not find __wine_
start_process
in kernel32.dll, status %x
\n
"
,
status
);
exit
(
1
);
}
...
...
@@ -4323,8 +4322,6 @@ void __wine_process_init(void)
NtTerminateProcess
(
GetCurrentProcess
(),
status
);
}
kernel32_start_process
=
init_func
();
virtual_set_large_address_space
();
/* the main exe needs to be the first in the load order list */
...
...
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