Piotr Caban : msvcrt: Add ismbblead_l implementation.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Jul 7 08:11:58 CDT 2015


Module: wine
Branch: master
Commit: 0eb112aa6e91454e279cc44cfb87c8155707fe41
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=0eb112aa6e91454e279cc44cfb87c8155707fe41

Author: Piotr Caban <piotr at 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)




More information about the wine-cvs mailing list