Alexandre Julliard
e24b16247d
ntdll: Pass an NT filename to get_load_order().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 22:19:47 +01:00
Alexandre Julliard
3099b04a89
ntdll: Return an NT filename in find_dll_file().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 22:18:16 +01:00
Alexandre Julliard
a6e4c814b6
ntdll: Use an NT filename to search for loaded modules.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 22:18:16 +01:00
Alexandre Julliard
6fb00db51e
ntdll: Don't use current directory for libraries unless explicitly specified in the search path.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 19:57:27 +01:00
Alexandre Julliard
c87aa2b9fc
ntdll: Support loading old runtime versions of IL-only images.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 15:29:53 +01:00
Alexandre Julliard
96eebec967
ntdll: Round header size to page boundary before checking it in PE header conversion.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-25 12:47:23 +01:00
Brendan McGrath
8cd569cf26
ntdll: Use 32bit when COM header marks it required.
...
Currently, when using wine64 to to load a .NET application which has the
32-bit required flag switched on, it fails with a c0000017 error
(ERROR_NOT_ENOUGH_MEMORY).
Signed-off-by: Brendan McGrath <brendan@redmandi.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-28 11:38:22 +01:00
André Hentschel
95fa795fa1
ntdll: Call system hook in LdrResolveDelayLoadedAPI when dll hook is missing.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46089
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-11-12 10:30:07 +01:00
Alexandre Julliard
926dd78069
ntdll: Convert PE header to 64-bit when loading a 32-bit IL-only module.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-25 20:32:03 +02:00
Alexandre Julliard
03e05c1f57
ntdll: Implement RtlSetUnhandledExceptionFilter().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-10-09 14:49:54 +02:00
Alexandre Julliard
2cab0ec389
server: Don't return the process exe file to the client.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-09-24 22:41:30 +02:00
Chip Davis
e6c6874ec3
ntdll: When an exception happens in DllMain(), print the code.
...
Also print exceptions from TLS callbacks.
Useful for debugging exceptions that prevent DLLs from loading.
Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-21 23:02:30 +02:00
Michael Stefaniuc
10f23ddb58
ntdll: Use the ARRAY_SIZE() macro.
...
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-08-14 10:15:59 +02:00
Michael Müller
4c13e1765f
ntdll: Implement LdrRegisterDllNotification and LdrUnregisterDllNotification.
...
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-27 10:58:51 +02:00
Alex Henrie
760ca4c05f
ntdll: Add LdrRegisterDllNotification stub.
...
Based on a patch by Michael Müller.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-05-17 10:03:08 +02:00
Alexandre Julliard
52e09e823e
ntdll: Add support for loading IL-only dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-04-02 20:47:11 +02:00
Piotr Caban
47da086af9
ntdll: Change module load order so it matches InLoadOrderModuleList.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-14 16:41:52 +01:00
Alexandre Julliard
7aa6dcafbb
ntdll: Handle LOAD_LIBRARY_AS_IMAGE_RESOURCE modules when loading resources.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-06 09:15:29 -06:00
Alexandre Julliard
1cee60d068
ntdll: Check file identity in addition to file name to find a loaded module.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:36 +01:00
Alexandre Julliard
97b0907439
ntdll: Allow loading 32-bit IL-only binaries on 64-bit.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 10:10:28 +01:00
Alexandre Julliard
6d6669fb2d
ntdll: Add a helper function to open a dll file.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 10:02:51 +01:00
Alexandre Julliard
8b35892b15
ntdll: Print a diagnostic when mscoree cannot be loaded.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 18:47:32 +01:00
Alexandre Julliard
39c8875ff8
ntdll: Add support for running IL-only .NET executables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:55:05 +01:00
Alexandre Julliard
12276796c9
ntdll: Hardcode the windows and system directories.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 19:38:29 +01:00
Alexandre Julliard
a8a74134e8
ntdll: Check for file mappings that cannot be loaded as dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 15:10:24 +01:00
Alexandre Julliard
9d911a5736
ntdll: Move suspending a thread on startup back to the platform-specific files.
...
This partially reverts f64d2688d2
.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 22:26:46 +01:00
Alexandre Julliard
8a62752fe9
ntdll: Use DWORDs for ARM assembly instructions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-18 19:20:10 +01:00
Alexandre Julliard
6fe15e6c41
ntdll: Round the pthread stack size to a page boundary.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-26 10:14:38 +01:00
Alexandre Julliard
f64d2688d2
ntdll: Move suspending a thread on startup into attach_dlls().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 20:32:12 +01:00
Alexandre Julliard
70b69f3e5f
ntdll: Don't return from attach_dlls on failure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 19:06:44 +01:00
Alexandre Julliard
afb16abc0f
ntdll: Add a platform-specific helper for starting a process.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 17:18:23 +01:00
Alexandre Julliard
f8e0bd1b0d
ntdll: Put the initial pthread stack at the end of the Win32 stack.
...
Create a separate view for it so that the main stack can be freed
independently.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 10:44:21 +01:00
Alexandre Julliard
822e142403
ntdll: Support magic \1 prefix in debug format for relay traces.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-25 12:05:40 +01:00
Alexandre Julliard
ed893d3591
ntdll: Delay attaching to dlls loaded because of a forwarded entry point.
...
Based on a patch by Sebastian Lackner.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-21 13:14:16 +01:00
Alexandre Julliard
8477ae27a8
ntdll: Fixup imports in the first thread that runs, even if it's not the main one.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-20 20:24:39 +01:00
Alexandre Julliard
ab182dbf06
server: No longer store the mapping object in the dll structure.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 17:01:45 +02:00
Alexandre Julliard
8c103f298b
ntdll: Add support for setting a platform-specific initial context.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:10:14 +02:00
Alexandre Julliard
9979c793e8
ntdll: Don't clear the last page of the initial stack.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:03:09 +02:00
Alexandre Julliard
a003f0aed8
ntdll: Store the kernel32 process entry point in a global variable.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 11:59:58 +02:00
Alexandre Julliard
94872cc84f
ntdll: Fix access rights checks for mapping objects.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:01 +02:00
Martin Storsjo
4eb2c5532d
ntdll: Simplify the arm version of a stub function.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 16:28:37 +02:00
Martin Storsjo
dd30536044
ntdll: Implement allocate_stub for arm64.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 16:28:14 +02:00
Martin Storsjo
114d8aded7
ntdll: Handle IMAGE_REL_BASED_DIR64 for arm64 in the same way as for x86_64.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-07 19:48:32 +02:00
Michael Müller
5a96399b66
ntdll: Implement LdrEnumerateLoadedModules.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:13 +02:00
Andrew Wesie
06c5a9ab55
ntdll: Read entry point in LdrInitializeThunk.
...
Overwatch overwrites the PE header contents in a TLS callback. This results in
a crash on wine, because the entry point will be incorrect in start_process.
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 21:37:08 +01:00
Ken Thomases
3d8efb2388
ntdll: For Mac 64-bit, poke NtCurrentTeb()->ThreadLocalStoragePointer to the corresponding offset from %gs.
...
64-bit Windows apps have hard-coded accesses to %gs:0x58 baked into them. They
need to find the ThreadLocalStoragePointer there.
Technically, the gsbase register and the memory it points to belong to the
pthread implementation on macOS. It's used for the pthread TLS implementation.
Slot 11 (offset 0x58) is currently used for the implementation of the ttyname()
system library function. We do not anticipate that Wine or any of the system
libraries or frameworks it uses will call ttyname(). Furthermore, Apple has
made it so that future releases of macOS will no longer use that slot. So, we
hijack it for our purposes.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 12:04:10 +09:00
Michael Müller
77be592845
ntdll: Do not sort InMemoryOrderModuleList by memory address.
...
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 21:23:26 +09:00
Sebastian Lackner
b89f88841e
ntdll: Skip unused import descriptors when loading libraries.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-11 12:22:34 +09:00
Jacek Caban
443c2a4719
ntdll: Pass SYNCHRONIZE flag in NtOpenFile and NtCreateFile calls.
...
This is needed by Office 2013, which hooks those functions and expects
flag to be set.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-02-09 20:36:17 +09:00
Alex Henrie
48f3bacb0b
ntdll: Avoid double initialization.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-01-22 22:25:39 +09:00