Keno Fischer
90173ce448
ntdll: Tolerate null handle in DeregisterWait.
...
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:22 +09:00
Austin English
0f137a0b89
ntdll: Forward DecodeSystemPointer/EncodeSystemPointer to DecodePointer/EncodePointer.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:47:51 +09:00
Daniel Lehman
e9e538abff
kernel32: Add GetNumberFormatEx.
...
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 16:43:23 +09:00
Keno Fischer
ccc1d346a6
kernel32: Fix RegisterWaitForSingleObject for console handles.
...
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 16:14:30 +09:00
John Sheu
4e8f43f423
kernel32/tests: Add thread tests for fiber-local storage.
...
Signed-off-by: John Sheu <sheu@google.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 00:09:39 +09:00
John Sheu
ab11a5ae45
kernel32/tests: Add loader tests for fiber-local storage.
...
Signed-off-by: John Sheu <sheu@google.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 00:09:39 +09:00
Hugh McMaster
2bda84a410
kernel32: Implement GetConsoleScreenBufferInfoEx.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 13:40:37 +09:00
Hugh McMaster
95f8270bc2
kernel32/tests: Add tests for GetConsoleScreenBufferInfoEx.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-17 13:40:34 +09:00
André Hentschel
bdd7be3747
kernel32/tests: Fill in the delay IAT to succeed on Win10.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-16 12:02:32 +09:00
Peter Beutner
c90e46b66d
kernel32: Properly handle double delimiters in GetShortPathName/GetLongPathName.
...
Signed-off-by: Peter Beutner <p.beutner@gmx.net>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-16 00:00:43 +09:00
Peter Beutner
1fe0b84ffc
kernel32/tests: Add path tests for double delimiters.
...
Signed-off-by: Peter Beutner <p.beutner@gmx.net>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-16 00:00:39 +09:00
Michael Stefaniuc
3bc7549f42
kernel32/tests: Remove another identical if/else branch.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 12:54:16 +09:00
Michael Stefaniuc
85dea19312
kernel32/tests: Remove an identical if / else branch.
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 12:52:45 +09:00
Michael Stefaniuc
3e6b503adb
kernel32/tests: Use todo_wine_if().
...
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 12:52:33 +09:00
Piotr Caban
84b3218ed6
server: Fix loading of IMAGE_OPTIONAL_HEADER.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 00:56:00 +09:00
Bernhard Übelacker
e2253d439f
kernel32/tests: Convert fiber back to thread even when IsThreadAFiber is not available.
...
Signed-off-by: Bernhard Übelacker <bernhardu@mailbox.org>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 21:49:48 +09:00
André Hentschel
2ecbdb8582
kernel32/tests: Remove superfluous filler definitions.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:28 +09:00
André Hentschel
c5868eed11
kernel32/tests: Use SetFilePointer instead of GetFileSize with WriteFile.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:28 +09:00
André Hentschel
e685bed6cc
kernel32/tests: Explicitly set SizeOfRawData.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:27 +09:00
Alexandre Julliard
1110eccafb
kernel32/tests: Fix a few more loader test failures.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:02 +09:00
Ken Thomases
2e636d4fe8
kernel32: For Mac 64-bit, re-enable the inlining of various functions, leveraging the TEB self pointer at %gs:0x30.
...
On other platforms, gsbase is set to point to Wine's TEB. So, these functions
can use %gs-relative addressing with the field offsets to access the fields of
the TEB.
On the Mac, gsbase points to internals of the pthread implementation and that
wouldn't work. However, Wine hijacks %gs:0x30 and stores the TEB address there.
So, we access the TEB fields by first loading the TEB address and then
accessing its fields relative to that.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:02 +09:00
Alexandre Julliard
ef716e9d1e
server: Don't grow the mapped file for read-only mappings.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 22:21:07 +09:00
Alexandre Julliard
32c7153fdb
server: Avoid rounding mapping sizes on the server side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 17:03:03 +09:00
Alexandre Julliard
24b49c4775
kernel32/tests: Fix loader test failures on some Windows versions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 16:09:40 +09:00
Francois Gouget
b54a8dda84
kernel32/tests: Remove a trailing space from an ok() call message.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 23:59:20 +09:00
Alexandre Julliard
6f0979b983
ntdll: Implement the SectionImageInformation class of NtQuerySection.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:33:16 +09:00
Alexandre Julliard
2602df14d8
ntdll: Implement the SectionBasicInformation class of NtQuerySection.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:32:10 +09:00
Alexandre Julliard
4832adf8f9
kernel32/tests: Remove some win9x compatibility cruft.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-25 23:15:49 +09:00
Michael Müller
1b26d38095
kernel32: In Win9x mode UnmapViewOfFile requires base address of a mapping.
...
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-19 22:03:21 +09:00
Michael Müller
1311c8157b
ntdll: NtUnmapViewOfSection should succeed for all offsets within the mapped range.
...
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-19 22:03:21 +09:00
Michael Müller
38d4935007
kernel32/tests: Add tests for UnmapViewOfFile with unaligned pointer.
...
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-19 22:03:21 +09:00
John Sheu
556fef3dd1
kernel32/tests: Add some tests for fiber-local storage.
...
Signed-off-by: John Sheu <sheu@google.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 19:59:30 +09:00
Sebastian Lackner
225498662e
kernel32/tests: Use inline implementation of NtCurrentTeb for process tests.
...
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 09:52:39 +09:00
Jacek Caban
f000189b8a
kernel32: Make MapViewOfFile and VirtualAlloc hotpatchable.
...
Both are patched by Firefox.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 20:49:05 +09:00
Alexandre Julliard
2f514becdb
kernel32: Store synchronization objects under the session directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 16:21:24 +09:00
Dmitry Timoshkov
6870f3c049
kernel32/tests: Add tests for GetThreadSelectorEntry.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:17:06 +09:00
Ken Thomases
a73045d6a0
kernel32: Overhaul the handling of argv in set_process_name().
...
This fixes several problems with the code:
* The code had been assuming that the argument strings pointed to by the argv
array are contiguous iff certain process-name-setting functions are available.
This doesn't seem reliable. Instead, test if it's true and shift the strings
if so.
However, setproctitle() is specifically documented as a preferred alternative
to the technique of overwriting the arg strings, so don't shift the strings
if that's available.
* Use the last path component, recognizing backslash as a path separator, for
setprogname() in addition to prctl(). First, setprogname() is documented as
searching for the last component itself, but it doesn't understand Windows-
style paths, so we need to help it. Second, on some platforms (e.g. macOS),
setprogname(), like prctl(), has a fairly small internal length limit (e.g.
32 characters). So, concentrate on the most meaningful part of the path.
* Remove argv[0] from argv whether or not there are any process-name-setting
functions available. This is necessary for the proper functioning of Wine,
so it must be done on all platforms. This part of the logic was lost with
commit 5a4576ee0
.
* Call all available process-name-setting functions instead of treating them
as mutually exclusive alternatives. This is also logic that was lost with
commit 5a4576ee0
.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:16:11 +09:00
Sebastian Lackner
4e0edaac1f
kernel32/tests: Use inline implementation of NtCurrentTeb for debugger tests.
...
Also enable BeingDebugged PEB tests on x86_64.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:13:15 +09:00
Sebastian Lackner
648cbf63c0
kernel32/tests: Add a test for sorting of InMemoryOrderModuleList.
...
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
Piotr Caban
4c50ef6995
ntdll: Add RtlRestoreContext implementation.
...
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 11:49:33 +09:00
Alex Henrie
d44ec680da
kernel32: Fix memory leak in WCEL_FindPrevInHist.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:22:05 +09:00
Alex Henrie
16c51fbe17
kernel32: Fix memory leak in WCEL_MoveToHist.
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:22:05 +09:00
Francois Gouget
c8d1fbc6d2
kernel32: Fix typos in a couple of comments.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 11:01:42 +09:00
Andrey Gusev
e1a4265867
kernel32/tests: Fix a typo in skip() message.
...
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:49:33 +09:00
André Hentschel
fdd953c2aa
kernel32/tests: Fix a typo.
...
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 12:04:08 +09:00
Akihiro Sagawa
7a9b36ca11
kernel32: Fix typo of i386 macro name in GetLargePageMinimum().
...
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-20 20:06:38 +09:00
Austin English
7dca3d139c
kernel32: Implement GetLargePageMinimum for arm.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 22:27:49 +09:00
Austin English
4d313e6475
kernel32: Implement GetLargePageMinimum.
...
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Marcus Meissner <marcus@jet.franken.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:19 +09:00
Ken Thomases
d90f29d817
kernel32: Overhaul the locale determination on the Mac.
...
The C library locale is inadequate for conveying the Mac user settings between
LOCALE_Init() and setup_unix_locales(). The set of locales supported by the C
library can't express the combinations allowed in user settings.
Setting LANG to a user-settings-derived locale when there's no corresponding C
library locale is actually worse than leaving it unset. It will prevent the
C library from honoring the LC_* variables (other than LC_ALL). That's why
Terminal.app won't set LANG in that case, it just sets LC_CTYPE=UTF-8. This
commit makes Wine follow similar logic in not setting LANG if the C library
doesn't support the Mac user settings.
Rather, it uses a wrapper around setlocale() to query the locale. That wrapper
returns a value representing the Mac user settings if the C library comes up
empty. It also has logic to handle Terminal's setting LC_CTYPE=UTF-8, since
parse_locale_name() can't handle that properly.
Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 00:09:19 +09:00
Alexandre Julliard
73d9e2ebff
kernel32: Use RtlCompareUnicodeStrings in CompareStringOrdinal for consistent results.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-14 17:09:54 +09:00