Gijs Vermeulen
d2d52717af
ntdll: Validate len in NtQueryVirtualMemory.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45632
Signed-off-by: Gijs Vermeulen <gijsvrm@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-18 16:03:59 +01:00
Alexandre Julliard
20a2cc9751
ntdll: Store extended FPU state and debug registers in RtlRaiseException().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 19:53:25 +01:00
Alexandre Julliard
edbdec441b
ntdll: Store extended FPU context in NtGetContextThread().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 19:53:25 +01:00
Alexandre Julliard
5ecea50170
ntdll: Make the CPU information global.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 19:53:25 +01:00
Alexandre Julliard
9f0d669239
ntdll: Rename attach_dlls() to LdrInitializeThunk().
...
Based on a patch by Andrew Wesie.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 17:57:09 +01:00
Alexandre Julliard
42df4dccd5
ntdll: Return the kernel process start address from __wine_kernel_init().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 17:57:09 +01:00
Alexandre Julliard
12a9b6d407
ntdll/tests: Add tests for initial process parameters layout.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 19:45:24 +01:00
Alexandre Julliard
a95d7f6c4f
ntdll: Recreate the process parameters structure once everything has been initialized.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 19:45:24 +01:00
Alexandre Julliard
50f0ed75ef
ntdll: Also create the initial process parameters with RtlCreateProcessParametersEx().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-13 12:48:36 +01:00
Alexandre Julliard
c0f693f6fc
ntdll: Hardcode the path of the windows directory for redirects.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-12 23:02:28 +01:00
Alexandre Julliard
7a122604ea
ntdll: Reimplement init_user_process_params() using RtlCreateProcessParametersEx().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-12 11:31:53 +01:00
Alexandre Julliard
6abf99b480
ntdll: Use the current platform as processorArchitecture instead of a wildcard.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-12 10:59:39 +01:00
Alexandre Julliard
9839bb7691
ntdll: Skip dlls of the wrong machine type when searching through the load path.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 12:31:40 +01:00
Alexandre Julliard
2062df7e6c
ntdll: Use the image info to check for fake dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 12:31:39 +01:00
Alexandre Julliard
f244c3b5eb
server: Add custom flag for fake dlls in PE image information.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 12:30:37 +01:00
Alexandre Julliard
f1bb3580e3
ntdll: Create the memory mapping for a dll directly at open time.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 12:30:35 +01:00
Alexandre Julliard
c946922a9c
ntdll: Directly try to open the dll file instead of checking for existence first.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Alexandre Julliard
4880a5a0f4
ntdll: Pass a flag instead of a file handle to load_builtin_dll().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Zebediah Figura
be541f1b0c
ntdll: Add a direct futex-based implementation of condition variables.
...
While the current path for condition variables will ultimately use futexes if
they are available, the path for address waits is vulnerable to several
spurious wakes, which can be obviated by using condition variables as futexes
directly.
This greatly improves performance for Path of Exile.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45524
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-11 11:52:00 +01:00
Alexandre Julliard
f7b3120991
ntdll: Remove no longer used parameter from find_fileid_module().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 23:00:27 +01:00
Alexandre Julliard
dc40bc85bc
ntdll: Use NT filenames when loading dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-08 22:20:26 +01:00
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
Zebediah Figura
954ed39584
ntdll: Reimplement condition variables on top of RtlWaitOnAddress().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46208
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
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
Zebediah Figura
cc8f9b6419
ntdll: Add a futex-based implementation of WaitOnAddress().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-06 10:48:04 +01:00
Julien D'ascenzio
257850e7ec
ntdll: Correct space/mark parity.
...
When CMSPAR is defined, the space and mark parity is reversed: the flag PARODD isn't set correctly.
Signed-off-by: Julien D'ascenzio <Julien.Dascenzio@paratronic.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-04 19:04:29 +01:00
Nikolay Sivov
9b90cfc281
ntdll: Make LdrFindResource_U() and LdrFindResourceDirectory_U() patchable.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-28 10:25:56 +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
Alexandre Julliard
b61d425502
ntdll: Implement RtlIsProcessorFeaturePresent().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 17:33:37 +01:00
Alexandre Julliard
7f4e5b1ed8
ntdll: Don't crash on empty table in RtlAddFunctionTable().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-24 16:45:54 +01:00
Nikolay Sivov
067f6d7463
ntdll: Implement growable unwind tables API.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46479
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:17:18 +01:00
Nikolay Sivov
0cd5a68ca4
ntdll: Keep unwind table entry count instead of a size.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:17:09 +01:00
Nikolay Sivov
6f7731819c
ntdll: Store range upper boundary for dynamic unwind entry.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-23 17:17:06 +01:00
Sven Baars
ba3e07420e
ntdll/tests: Fix some string leaks (Valgrind).
...
Signed-off-by: Sven Baars <sven.wine@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-18 23:39:02 +01:00
Piotr Caban
9fa65a8751
server: Fix process trace_data initialization race on Mac.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-08 10:20:02 -06:00
Alexandre Julliard
dc80a00329
ntdll: Also store FPU registers in RtlRaiseException().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=44485
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-01-02 23:02:25 +01:00
Dmitry Timoshkov
c26b6afad3
kernel32: CreateDirectory shouldn't return ERROR_ACCESS_DENIED for the root of the drive.
...
According to the testbot results CreateDirectory("C:\\", NULL) fails
with ERROR_ACCESS_DENIED for not administrators. However with UAC enabled
and not and administrator account I get ERROR_ALREADY_EXISTS in that case
with Windows 7 64-bit running on real hardware. Moreover, Wine doesn't
really perform any access checks in that case and blindly assumes that
returning STATUS_ACCESS_DENIED is correct behaviour for the drive's root:
dlls/ntdll/directory.c,lookup_unix_name().
This patch fixes an application that can't find its data files because
after it receives ERROR_ACCESS_DENIED it stops further directory traversing.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-28 17:42:23 +01:00
André Hentschel
1b5b311cce
ntdll: Use correct PC for instruction decoding on ARM64.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46194
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-24 20:12:25 +01:00
Zebediah Figura
1344dcee39
ntdll/tests: Fix a memory leak (Valgrind).
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-13 10:12:21 +01:00
Alexandre Julliard
b3167770e7
ntdll/tests: Fix a test crash on latest Windows 10.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-11 15:55:34 +01:00
Akihiro Sagawa
67574e4440
wine.inf: Add MUI time zone name settings.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-07 18:07:54 +01:00
Akihiro Sagawa
434bc1baf5
ntdll: Use an MUI time zone name if available.
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-06 19:22:48 +01:00
Roderick Colenbrander
3c329e28d9
ntdll: Print FIXME on systems supporting more CPU cores than supported.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:11 +01:00
Roderick Colenbrander
b9af36933f
ntdll: Fix parsing thread_siblings bitmaps on high core count systems.
...
Linux compiled for a high number of CPU cores, the bitmap is broken
into sections of 32-bit by commas. Handle parsing this.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45453
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:11 +01:00
Roderick Colenbrander
ed75a7b344
ntdll: Parse sysfs cpu_shared_map using helper function.
...
Signed-off-by: Roderick Colenbrander <thunderbird2k@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:11 +01:00
Zebediah Figura
6060d2703c
ntdll: Use a critical section to ensure that RtlWaitOnAddress compares and queues atomically.
...
Currently a wake may occur between calling compare_addr() and performing the
select request; in that case the thread will never be woken. Prevent this by
taking a CS around both operations.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46099
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:10 +01:00
Zebediah Figura
0ea963a406
ntdll: Call the select request directly in RtlWaitOnAddress().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-04 16:13:10 +01:00