Module: wine Branch: master Commit: de8e6b6a283f3f0148d8195c33964632921fa1ba URL: https://source.winehq.org/git/wine.git/?a=commit;h=de8e6b6a283f3f0148d8195c3...
Author: Piotr Caban piotr@codeweavers.com Date: Mon Oct 28 13:29:05 2019 +0100
msvcrt: Add _mbsspn_l implementation.
Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
.../api-ms-win-crt-multibyte-l1-1-0.spec | 2 +- dlls/msvcr100/msvcr100.spec | 2 +- dlls/msvcr110/msvcr110.spec | 2 +- dlls/msvcr120/msvcr120.spec | 2 +- dlls/msvcr80/msvcr80.spec | 2 +- dlls/msvcr90/msvcr90.spec | 2 +- dlls/msvcrt/mbcs.c | 16 ++++++++++++---- dlls/msvcrt/msvcrt.spec | 2 +- dlls/ucrtbase/ucrtbase.spec | 2 +- 9 files changed, 20 insertions(+), 12 deletions(-)
diff --git a/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec b/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec index 3f60bb4162..059e366aea 100644 --- a/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec +++ b/dlls/api-ms-win-crt-multibyte-l1-1-0/api-ms-win-crt-multibyte-l1-1-0.spec @@ -178,7 +178,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) ucrtbase._mbsspn -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) ucrtbase._mbsspn_l @ cdecl _mbsspnp(str str) ucrtbase._mbsspnp @ stub _mbsspnp_l @ cdecl _mbsstr(str str) ucrtbase._mbsstr diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index f3647ea267..b59e8cf5cc 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -1184,7 +1184,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) @ stub _mbsspnp_l @ cdecl _mbsstr(str str) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index 343f2bd3c9..0697029962 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1541,7 +1541,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) @ stub _mbsspnp_l @ cdecl _mbsstr(str str) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index 9938b1ff46..07ce01c90e 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1551,7 +1551,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) @ stub _mbsspnp_l @ cdecl _mbsstr(str str) diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 8e59d320f0..1e03b4d4d9 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -856,7 +856,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) @ stub _mbsspnp_l @ cdecl _mbsstr(str str) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 5e8fba1c87..a8369cb6c6 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -834,7 +834,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) @ stub _mbsspnp_l @ cdecl _mbsstr(str str) diff --git a/dlls/msvcrt/mbcs.c b/dlls/msvcrt/mbcs.c index fe47e55eae..ce98749e9f 100644 --- a/dlls/msvcrt/mbcs.c +++ b/dlls/msvcrt/mbcs.c @@ -2021,11 +2021,11 @@ int CDECL _mbsupr_s(unsigned char* s, MSVCRT_size_t len) return 0; }
- /********************************************************************* - * _mbsspn (MSVCRT.@) + * _mbsspn_l (MSVCRT.@) */ -MSVCRT_size_t CDECL _mbsspn(const unsigned char* string, const unsigned char* set) +MSVCRT_size_t CDECL _mbsspn_l(const unsigned char* string, + const unsigned char* set, MSVCRT__locale_t locale) { const unsigned char *p, *q;
@@ -2033,7 +2033,7 @@ MSVCRT_size_t CDECL _mbsspn(const unsigned char* string, const unsigned char* se { for (q = set; *q; q++) { - if (_ismbblead(*q)) + if (_ismbblead_l(*q, locale)) { /* duplicate a bug in native implementation */ if (!q[1]) break; @@ -2055,6 +2055,14 @@ MSVCRT_size_t CDECL _mbsspn(const unsigned char* string, const unsigned char* se return p - string; }
+/********************************************************************* + * _mbsspn (MSVCRT.@) + */ +MSVCRT_size_t CDECL _mbsspn(const unsigned char* string, const unsigned char* set) +{ + return _mbsspn_l(string, set, NULL); +} + /********************************************************************* * _mbsspnp (MSVCRT.@) */ diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index 2d9f273df9..e4fad75c18 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -802,7 +802,7 @@ # stub _mbsset_s(ptr long long) # stub _mbsset_s_l(ptr long long ptr) @ cdecl _mbsspn(str str) -# stub _mbsspn_l(str str ptr) +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) # stub _mbsspnp_l(str str ptr) @ cdecl _mbsstr(str str) diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec index fc391b8d81..7dfa9147d7 100644 --- a/dlls/ucrtbase/ucrtbase.spec +++ b/dlls/ucrtbase/ucrtbase.spec @@ -697,7 +697,7 @@ @ stub _mbsset_s @ stub _mbsset_s_l @ cdecl _mbsspn(str str) -@ stub _mbsspn_l +@ cdecl _mbsspn_l(str str ptr) @ cdecl _mbsspnp(str str) @ stub _mbsspnp_l @ cdecl _mbsstr(str str)