Piotr Caban : msvcrt: Don't forward bsearch to ntdll.

Alexandre Julliard julliard at winehq.org
Tue Oct 1 14:54:28 CDT 2013


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Tue Oct  1 11:28:54 2013 +0200

msvcrt: Don't forward bsearch to ntdll.

---

 dlls/msvcrt/misc.c      |   14 ++++++++++++++
 dlls/msvcrt/msvcrt.spec |    2 +-
 2 files changed, 15 insertions(+), 1 deletions(-)

diff --git a/dlls/msvcrt/misc.c b/dlls/msvcrt/misc.c
index 75e75e6..effca2b 100644
--- a/dlls/msvcrt/misc.c
+++ b/dlls/msvcrt/misc.c
@@ -151,6 +151,20 @@ void* CDECL MSVCRT_bsearch_s(const void *key, const void *base,
     return NULL;
 }
 
+static int CDECL compare_wrapper(void *ctx, const void *e1, const void *e2)
+{
+    int (__cdecl *compare)(const void *, const void *) = ctx;
+    return compare(e1, e2);
+}
+
+/*********************************************************************
+ *                  bsearch (msvcrt.@)
+ */
+void* CDECL MSVCRT_bsearch(const void *key, const void *base, MSVCRT_size_t nmemb,
+        MSVCRT_size_t size, int (__cdecl *compar)(const void *, const void *))
+{
+    return MSVCRT_bsearch_s(key, base, nmemb, size, compare_wrapper, compar);
+}
 /*********************************************************************
  *		_chkesp (MSVCRT.@)
  *
diff --git a/dlls/msvcrt/msvcrt.spec b/dlls/msvcrt/msvcrt.spec
index acf53aa..63e4f4c 100644
--- a/dlls/msvcrt/msvcrt.spec
+++ b/dlls/msvcrt/msvcrt.spec
@@ -1257,7 +1257,7 @@
 @ cdecl atof(str) MSVCRT_atof
 @ cdecl atoi(str) MSVCRT_atoi
 @ cdecl atol(str) ntdll.atol
-@ cdecl bsearch(ptr ptr long long ptr) ntdll.bsearch
+@ cdecl bsearch(ptr ptr long long ptr) MSVCRT_bsearch
 @ cdecl bsearch_s(ptr ptr long long ptr ptr) MSVCRT_bsearch_s
 @ cdecl btowc(long) MSVCRT_btowc
 @ cdecl calloc(long long) MSVCRT_calloc




More information about the wine-cvs mailing list