Commit graph

730 commits

Author SHA1 Message Date
Alexandre Julliard 3ec7c467cd make_unicode: Generate the time zone registry keys.
Based on a script written by Giovanni Mascellani.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 21:05:26 +02:00
Alexandre Julliard 630f605c26 make_unicode: Make support of registry values more generic.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-24 21:05:25 +02:00
Daniel Lehman 1714963a5f kernelbase: Pass va_list copy to internal RtlFormatMessage.
va_list passed to RtlFormatMessage is modified even on error in this
case, if the buffer is not large enough, STATUS_BUFFER_OVERFLOW is
returned and FormatMessage tries again, but the va_list pointer is now
moved to a later argument, so the next call reads off the end,
crashing.

Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-13 16:54:30 +02:00
Rémi Bernon a4966b6690 kernelbase: Cleanup and simplify (Global|Local)ReAlloc.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-06-10 18:24:35 +02:00
Rémi Bernon 660332326e kernelbase: Stop using an offset for HLOCAL pointers.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-06-10 18:24:35 +02:00
Rémi Bernon 64efaf26b7 kernelbase: Use RtlSetUserValueHeap to store HLOCAL.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-06-09 20:55:20 +02:00
Rémi Bernon 06b582e695 kernelbase: Use HEAP_ADD_USER_INFO for HLOCAL allocations.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-06-09 20:55:20 +02:00
Alexandre Julliard 5dee0ed755 kernelbase: Add NORM_IGNORENONSPACE support in LCMapStringEx().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=36720
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-08 15:02:30 +02:00
Alexandre Julliard 1e52895ef7 kernelbase: Implement IsNLSDefinedString().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-07 16:57:26 +02:00
Alexandre Julliard 91cd073106 kernelbase: Add support for high Unicode planes in LCMapStringEx().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-06 14:38:47 +02:00
Nikolay Sivov f98d4f3ef1 kernelbase/tests: Add some more tests for region splitting.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-06-06 12:16:33 +02:00
Nikolay Sivov 03fde5c002 kernelbase: Implement VirtualAlloc2FromApp().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-06-06 12:16:33 +02:00
Nikolay Sivov 3dcb85f56d kernelbase/tests: Move VirtualAllocFromApp() tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
2022-06-06 12:16:33 +02:00
Alexandre Julliard d1580fd209 kernelbase: Initialize all the compression tables the first time.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53094
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-03 12:50:41 +02:00
Rémi Bernon 9af87e2c64 kernelbase: Convert RtlWalkHeap structure on input too.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-06-02 17:24:49 +02:00
Alexandre Julliard ef0eb994e6 kernelbase: Add a helper function to simplify flags checking in LCMapStringEx().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-02 10:54:02 +02:00
Alexandre Julliard 86941c44d9 kernelbase: Add a helper function to map an entire buffer to half width.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-02 10:10:44 +02:00
Alexandre Julliard cd44979ce1 kernelbase: Add a helper function to map an entire buffer to full width.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-02 09:56:48 +02:00
Alexandre Julliard 9c98e96842 kernelbase: Add a helper function to case-map an entire buffer.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-02 09:56:39 +02:00
Alexandre Julliard c2a455a20d kernelbase: Fix checks for valid locale in LCMapStringW/Ex.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-01 12:46:40 +02:00
Alexandre Julliard 9990dc11df kernelbase: Fix typo in null pointer check.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53080
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-01 10:26:56 +02:00
Alexandre Julliard 66fb3bf631 make_unicode: Get rid of the old collation table.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-31 11:43:28 +02:00
Alexandre Julliard 99cbbb8998 kernelbase: Remove no longer needed case table initialization.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-31 11:43:28 +02:00
Alexandre Julliard e613d29450 kernelbase: Reimplement FindNLSStringEx/W using the sortkey generation code.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 22:40:23 +02:00
Alexandre Julliard d8c973ad95 kernelbase: Reimplement CompareStringEx using the sortkey generation code.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 22:39:29 +02:00
Alexandre Julliard bc440c9c6d kernelbase: Add support for SORT_DIGITSASNUMBERS in sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 13:13:03 +02:00
Alexandre Julliard b90f0be0e7 kernelbase: Add support for Kana extra weights in sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 13:11:41 +02:00
Alexandre Julliard abc93d0809 kernelbase: Add support for Hangul composition in sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 13:09:26 +02:00
Alexandre Julliard 5c324cb8c9 kernelbase: Add support for character compression in sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 13:06:26 +02:00
Alexandre Julliard 9605f5870a kernelbase: Add support for character expansion in sortkeys.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 13:02:09 +02:00
Alexandre Julliard 681489dbb6 kernelbase: Reimplement sortkey generation using the sortdefault.nls data.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 12:56:40 +02:00
Huw Davies f27a77e593 kernelbase: Avoid relying on the exception handler to test that handle != NULL.
Fixes a regression in SlingPlayer 2 caused by commit
a76518c186.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52127
Signed-off-by: Huw Davies <huw@codeweavers.com>
2022-05-27 15:25:07 +02:00
Alexandre Julliard a980fa0d78 kernelbase: Don't ignore the specified locale in CompareStringW.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-24 18:21:56 +02:00
Alexandre Julliard 2dced17876 kernelbase: Don't ignore the specified locale in LCMapStringA/W.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-24 18:21:56 +02:00
Brendan Shanks 509877743e kernelbase: Add RaiseFailFastException stub.
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-23 20:54:46 +02:00
Rémi Bernon 1e11056256 kernelbase: Workaround Local(Alloc|Free) invalid access warnings.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
2022-05-23 18:58:25 +02:00
Nikolay Sivov 15aa8c6fb8 kernelbase: Add SetThreadInformation().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52956
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-20 14:36:44 +02:00
Nikolay Sivov 6fe7535c97 kernelbase: Fix VirtualAlloc2() when called with NULL process handle.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-20 11:37:28 +02:00
Nikolay Sivov 30f1777e87 kernelbase/tests: Add some VirtualAlloc2() tests.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-20 11:37:24 +02:00
Alexandre Julliard 610db32153 kernelbase: Cache the sortid for each locale.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-16 20:46:49 +02:00
Alexandre Julliard 093f6cbb8c kernelbase: Move get_language_sort() to avoid forward declarations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-16 20:46:49 +02:00
Rémi Bernon 074177b8b0 ntdll: Rewrite RtlWalkHeap and enumerate large blocks.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-13 22:11:41 +02:00
Nikolay Sivov 1336f5966f kernelbase/tests: Close mapping in MapViewOfFile3 test.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52970
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-12 12:34:17 +02:00
Nikolay Sivov 1e2bc2f50e kernel32: Implement UnmapViewOfFileEx().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-06 19:17:01 +02:00
Francois Gouget 48d538ba82 kernelbase/tests: Loosen up the Sleep() test lower bound.
It looks like Windows tries to work around the timer granularity by
sometimes returning early such that the total may be a bit less than
requested.

Signed-off-by: Francois Gouget <fgouget@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-06 19:16:48 +02:00
Nikolay Sivov 757f9e9751 kernelbase: Implement UnmapViewOfFile2().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-05 18:35:38 +02:00
Nikolay Sivov 9c40a80100 kernelbase: Implement MapViewOfFile3().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 21:27:25 +02:00
Alexandre Julliard dc37b66d17 kernelbase: Reimplement GetTimeFormatA().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 08:56:25 +02:00
Alexandre Julliard fc26407e8e kernelbase: Reimplement GetDateFormatA().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 08:55:45 +02:00
Alexandre Julliard 1b127e24dc kernelbase: Reimplement GetTimeFormatW/Ex() using get_locale_info().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-04 08:55:19 +02:00