Module: wine Branch: master Commit: 0eb112aa6e91454e279cc44cfb87c8155707fe41 URL: http://source.winehq.org/git/wine.git/?a=commit;h=0eb112aa6e91454e279cc44cfb...
Author: Piotr Caban piotr@codeweavers.com Date: Mon Jul 6 19:40:01 2015 +0200
msvcrt: Add ismbblead_l implementation.
---
dlls/msvcr100/msvcr100.spec | 2 +- dlls/msvcr110/msvcr110.spec | 2 +- dlls/msvcr120/msvcr120.spec | 2 +- dlls/msvcr120_app/msvcr120_app.spec | 2 +- dlls/msvcr80/msvcr80.spec | 2 +- dlls/msvcr90/msvcr90.spec | 2 +- dlls/msvcrt/mbcs.c | 18 +++++++++++++++++- dlls/msvcrt/msvcrt.spec | 2 +- 8 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec index b41037a..986e372 100644 --- a/dlls/msvcr100/msvcr100.spec +++ b/dlls/msvcr100/msvcr100.spec @@ -966,7 +966,7 @@ @ stub _ismbbkpunct(long) @ stub _ismbbkpunct_l @ cdecl _ismbblead(long) -@ stub _ismbblead_l +@ cdecl _ismbblead_l(long ptr) @ stub _ismbbprint(long) @ stub _ismbbprint_l @ stub _ismbbpunct(long) diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec index e5ef1bb..78131aa 100644 --- a/dlls/msvcr110/msvcr110.spec +++ b/dlls/msvcr110/msvcr110.spec @@ -1313,7 +1313,7 @@ @ stub _ismbbkpunct(long) @ stub _ismbbkpunct_l @ cdecl _ismbblead(long) -@ stub _ismbblead_l +@ cdecl _ismbblead_l(long ptr) @ stub _ismbbprint(long) @ stub _ismbbprint_l @ stub _ismbbpunct(long) diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec index ff034b7..9fb8d93 100644 --- a/dlls/msvcr120/msvcr120.spec +++ b/dlls/msvcr120/msvcr120.spec @@ -1314,7 +1314,7 @@ @ stub _ismbbkpunct(long) @ stub _ismbbkpunct_l @ cdecl _ismbblead(long) -@ stub _ismbblead_l +@ cdecl _ismbblead_l(long ptr) @ stub _ismbbprint(long) @ stub _ismbbprint_l @ stub _ismbbpunct(long) diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec index 0b8a15a..3ff423d 100644 --- a/dlls/msvcr120_app/msvcr120_app.spec +++ b/dlls/msvcr120_app/msvcr120_app.spec @@ -1219,7 +1219,7 @@ @ cdecl _ismbbkpunct(long) msvcr120._ismbbkpunct @ stub _ismbbkpunct_l @ cdecl _ismbblead(long) msvcr120._ismbblead -@ stub _ismbblead_l +@ cdecl _ismbblead_l(long ptr) msvcr120._ismbblead_l @ cdecl _ismbbprint(long) msvcr120._ismbbprint @ stub _ismbbprint_l @ cdecl _ismbbpunct(long) msvcr120._ismbbpunct diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec index 23bded4a..ef24b91 100644 --- a/dlls/msvcr80/msvcr80.spec +++ b/dlls/msvcr80/msvcr80.spec @@ -639,7 +639,7 @@ @ stub _ismbbkpunct(long) @ stub _ismbbkpunct_l @ cdecl _ismbblead(long) -@ stub _ismbblead_l +@ cdecl _ismbblead_l(long ptr) @ stub _ismbbprint(long) @ stub _ismbbprint_l @ stub _ismbbpunct(long) diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec index 32d850a..e58b8f9 100644 --- a/dlls/msvcr90/msvcr90.spec +++ b/dlls/msvcr90/msvcr90.spec @@ -616,7 +616,7 @@ @ stub _ismbbkpunct(long) @ stub _ismbbkpunct_l @ cdecl _ismbblead(long) -@ stub _ismbblead_l +@ cdecl _ismbblead_l(long ptr) @ stub _ismbbprint(long) @ stub _ismbbprint_l @ stub _ismbbpunct(long) diff --git a/dlls/msvcrt/mbcs.c b/dlls/msvcrt/mbcs.c index 4c85b90..8c4bc02 100644 --- a/dlls/msvcrt/mbcs.c +++ b/dlls/msvcrt/mbcs.c @@ -1374,12 +1374,28 @@ int CDECL _ismbckata(unsigned int c) return 0; }
+ +/********************************************************************* + * _ismbblead_l(MSVCRT.@) + */ +int CDECL _ismbblead_l(unsigned int c, MSVCRT__locale_t locale) +{ + MSVCRT_pthreadmbcinfo mbcinfo; + + if(!locale) + mbcinfo = get_mbcinfo(); + else + mbcinfo = locale->mbcinfo; + + return (mbcinfo->mbctype[(c&0xff) + 1] & _M1) != 0; +} + /********************************************************************* * _ismbblead(MSVCRT.@) */ int CDECL _ismbblead(unsigned int c) { - return (get_mbcinfo()->mbctype[(c&0xff) + 1] & _M1) != 0; + return _ismbblead_l(c, NULL); }
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec index d7a5878..7fb13a6 100644 --- a/dlls/msvcrt/msvcrt.spec +++ b/dlls/msvcrt/msvcrt.spec @@ -585,7 +585,7 @@ @ stub _ismbbkpunct(long) # stub _ismbbkpunct_l(long ptr) @ cdecl _ismbblead(long) -# stub _ismbblead_l(long ptr) +@ cdecl _ismbblead_l(long ptr) @ stub _ismbbprint(long) # stub _ismbbprint_l(long ptr) @ stub _ismbbpunct(long)