Alexandre Julliard
f831b3bd3d
ntdll: Use wcsnicmp() instead of strncmpiW() where possible.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Alexandre Julliard
3e049b6b96
ntdll: Use wcsicmp() instead of strcmpiW() where possible.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Alexandre Julliard
9bbb66fdf7
ntdll: Use the NLS case mapping table for RtlHashUnicodeString().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:34:49 +01:00
Alexandre Julliard
b408b07eae
ntdll: Support the sortkey file in NtGetNlsSectionPtr().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-17 15:18:57 +01:00
Alexandre Julliard
0d6802dcc5
ntdll: Use the NLS case mapping table for towlower/towupper.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-11 09:29:56 +01:00
Alexandre Julliard
ab9fe967f1
ntdll: Reimplement IdnToUnicode() using the normalization table and the ntdll helpers.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 13:20:24 +01:00
Alexandre Julliard
01237d0896
ntdll: Reimplement IdnToAscii() using the normalization table and the ntdll helpers.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 13:20:24 +01:00
Alexandre Julliard
cd13557f48
ntdll: Reimplement IdnToNameprepUnicode() using the NLS normalization table.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 13:20:24 +01:00
Alexandre Julliard
35c223850e
ntdll: Delay NFC table loading on macOS.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48689
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-03 13:20:24 +01:00
Alexandre Julliard
4aebd6a95f
ntdll: Allow final null in RtlNormalizeString() even if 0 is an invalid character.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-28 16:39:01 +01:00
Alexandre Julliard
3e6b15c7b5
ntdll: Implement RtlIsNormalizedString().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Alexandre Julliard
64dc42e34f
ntdll: Use external NLS files for Unicode normalization.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-21 13:48:44 +01:00
Alexandre Julliard
c388ad357a
wine.inf: Add registry keys for normalization forms.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-18 11:23:40 +01:00
Alexandre Julliard
fdc89e02e6
ntdll: Add support for Hangul Unicode normalization.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard
64e6d72284
unicode: Add support for high Unicode planes in composition tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard
c658731975
unicode: Add support for high Unicode planes in decomposition tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 15:04:59 +01:00
Alexandre Julliard
148f564d10
unicode: Add support for high Unicode planes to the combining class table.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-17 13:49:05 +01:00
Alexandre Julliard
f55637dc1b
ntdll: Don't allow unsupported codepages as Unix codepage.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-12 16:54:03 +01:00
Alexandre Julliard
9b01eda7c8
ntdll: Use external codepage tables for the Unix codepage too.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 09:15:19 +01:00
Alexandre Julliard
fb316c3377
unicode: Generate nls files for the codepage tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 09:06:45 +01:00
Alexandre Julliard
42a30a693a
makefiles: Move l_intl.nls to a new nls directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-11 09:05:33 +01:00
Alexandre Julliard
cd8eaef47e
unicode: Avoid copying the decomposition data when not necessary.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-04 21:30:26 +01:00
Alexandre Julliard
a7cc191aa8
ntdll: Fix estimated buffer sizes in RtlNormalizeString().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 20:48:03 +01:00
Alexandre Julliard
dcd195e0f1
ntdll: Add parameter checking in RtlNormalizeString().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 19:20:39 +01:00
Alexandre Julliard
cc300a20b3
libport: Move Unicode normalization implementation to ntdll.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-03 19:20:39 +01:00
Alexandre Julliard
aeab1b2a6b
ntdll: Fix memory leak in RtlNormalizeString().
...
Spotted by Piotr Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-30 21:11:38 +01:00
Alexandre Julliard
ddb6f150e1
ntdll: Fix memory corruption in RtlNormalizeString().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-27 17:58:34 +01:00
Dmitry Timoshkov
b95d2f553c
ntdll: Use default casemap and codepage file names if the value in registry is empty.
...
This helps to keep compatibility with old prefixes being reused for wine-5.0.
Old prefixes in their registry have
[System\\CurrentControlSet\\Control\\Nls\\Codepage]
"37"=""
[System\\CurrentControlSet\\Control\\Nls\\Language]
"0409"=""
and this leads to LCMapString(LCMAP_LOWERCASE/LCMAP_UPPERCASE) return garbage.
This is a regression caused by 94a3add0ea
.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-24 20:21:11 +01:00
Zebediah Figura
18c3c2c78b
ntdll: Return -1 from Unix code page conversion functions if an error was encountered.
...
If 0 is returned, the caller has no way of determining this. This fixes a
test failure in kernel32:change introduced by f46fa9c92
.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-16 11:57:27 +01:00
Alexandre Julliard
5de7b6a159
ntdll: Fix contents of the glyph table in generated codepage data.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 22:30:23 +01:00
Alexandre Julliard
117dbfa2cf
ntdll: Fix DBCS mappings in RtlCustomCPToUnicodeN().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-06 19:50:06 +01:00
Alexandre Julliard
f46fa9c92d
ntdll: Use the Rtl UTF8 conversion functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-04 16:03:48 +01:00
Alexandre Julliard
27f0426b6f
ntdll: Implement RtlUTF8ToUnicodeN.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-04 16:03:48 +01:00
Alexandre Julliard
0b39344ef0
ntdll: Reimplement RtlUnicodeToUTF8N.
...
This avoids relying on wine_utf8_wcstombs().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-04 16:03:48 +01:00
Alexandre Julliard
3ebe447507
ntdll: Reimplement Unicode case mapping functions using the Win32-format tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 09:30:43 +01:00
Alexandre Julliard
dd572e9a2d
ntdll: Reimplement Unicode to multibyte conversion functions using the Win32-format tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 09:30:43 +01:00
Alexandre Julliard
e13c4d859e
ntdll: Reimplement multibyte to Unicode conversion functions using the Win32-format tables.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 09:30:43 +01:00
Alexandre Julliard
0e97fe86fd
ntdll: Implement custom codepage conversion functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-03 09:30:43 +01:00
Alexandre Julliard
1902ab4d85
ntdll: Don't fail to load data file when the registry key is missing.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48188
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-28 10:06:25 +01:00
Alexandre Julliard
ea20035272
ntdll: Generate a Windows format codepage table using the libwine data.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-26 20:43:52 +01:00
Alexandre Julliard
c0ff49061f
ntdll Implement RtlInitNlsTables() and RtlResetRtlTranslations().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-26 20:43:52 +01:00
Alexandre Julliard
9ae5717ba6
ntdll: Implement RtlInitCodePageTable().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-26 20:43:52 +01:00
Alexandre Julliard
f5c4a89cf2
ntdll: Implement NtGetNlsSectionPtr().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-26 18:03:16 +01:00
Alexandre Julliard
fd588a22b7
kernel32: Move string normalization functions to ntdll.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-21 10:43:46 +01:00
Alexandre Julliard
f1bfd2c0b1
ntdll: Initialize the system and user locales directly in ntdll.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-20 16:25:16 +01:00
Alexandre Julliard
7ac7a902c8
ntdll: Implement RtlLocaleNameToLcid().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 23:15:04 +01:00
Alexandre Julliard
4538a137e0
ntdll: Move locale functions to a new locale.c file.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 23:15:04 +01:00