Alexandre Julliard
3d3545b12f
ntdll: Move the Unix codepage initialization to the Unix library.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-20 16:16:40 +02:00
Alexandre Julliard
39e4b788d6
ntdll: Use the standard Interlocked* functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 15:10:04 +02:00
Alexandre Julliard
3e0c90e4c7
ntdll: Avoid using wine_get_build/data_dir() from libwine.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:35:19 +02:00
Alexandre Julliard
abb33fb90e
ntdll: Also ignore missing directories in NtGetNlsSectionPtr().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48966
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 20:54:21 +02:00
Alexandre Julliard
e36b97e1d0
ntdll: Use wcsncmp() instead of strncmpW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
4501ab0a7c
ntdll: Use wcscmp() instead of strcmpW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
e003b9884e
ntdll: Use wcslen() instead of strlenW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
667fbe8791
ntdll: Use wcspbrk() instead of strpbrkW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
6de0ab276b
ntdll: Use wcschr() instead of strchrW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
80005ee016
ntdll: Use wcscat() instead of strcatW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
18411a19b4
ntdll: Use wcscpy() instead of strcpyW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard
eb1b2e5486
ntdll: Avoid using sprintfW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Alexandre Julliard
7a974814cd
ntdll: Avoid using tolowerW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Alexandre Julliard
1cde869627
ntdll: Avoid using toupperW().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
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