Piotr Caban : msvcp90: Added 64-bit char_traits tests.

Alexandre Julliard julliard at winehq.org
Mon Aug 16 12:25:07 CDT 2010


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Mon Aug 16 11:06:28 2010 +0200

msvcp90: Added 64-bit char_traits tests.

---

 dlls/msvcp90/tests/misc.c |   34 +++++++++++++++++++++++-----------
 1 files changed, 23 insertions(+), 11 deletions(-)

diff --git a/dlls/msvcp90/tests/misc.c b/dlls/msvcp90/tests/misc.c
index ab154e9..a3f7401 100644
--- a/dlls/msvcp90/tests/misc.c
+++ b/dlls/msvcp90/tests/misc.c
@@ -32,7 +32,7 @@ static BYTE (__cdecl *p_char_eq)(const void*, const void*);
 static BYTE (__cdecl *p_wchar_eq)(const void*, const void*);
 static BYTE (__cdecl *p_short_eq)(const void*, const void*);
 
-static char* (__cdecl *p_Copy_s)(char*, unsigned int, const char*, unsigned int);
+static char* (__cdecl *p_Copy_s)(char*, size_t, const char*, size_t);
 
 static int invalid_parameter = 0;
 static void __cdecl test_invalid_parameter_handler(const wchar_t *expression,
@@ -64,15 +64,27 @@ static BOOL init(void)
 
     p_set_invalid_parameter_handler(test_invalid_parameter_handler);
 
-    p_char_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at D@std@@SAXAADABD at Z");
-    p_wchar_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at _W@std@@SAXAA_WAB_W at Z");
-    p_short_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at G@std@@SAXAAGABG at Z");
+    if(sizeof(void*) == 8) { /* 64-bit initialization */
+        p_char_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at D@std@@SAXAEADAEBD at Z");
+        p_wchar_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at _W@std@@SAXAEA_WAEB_W at Z");
+        p_short_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at G@std@@SAXAEAGAEBG at Z");
 
-    p_char_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at D@std@@SA_NABD0 at Z");
-    p_wchar_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at _W@std@@SA_NAB_W0 at Z");
-    p_short_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at G@std@@SA_NABG0 at Z");
+        p_char_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at D@std@@SA_NAEBD0 at Z");
+        p_wchar_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at _W@std@@SA_NAEB_W0 at Z");
+        p_short_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at G@std@@SA_NAEBG0 at Z");
 
-    p_Copy_s = (void*)GetProcAddress(msvcp, "?_Copy_s@?$char_traits at D@std@@SAPADPADIPBDI at Z");
+        p_Copy_s = (void*)GetProcAddress(msvcp, "?_Copy_s@?$char_traits at D@std@@SAPEADPEAD_KPEBD1 at Z");
+    } else {
+        p_char_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at D@std@@SAXAADABD at Z");
+        p_wchar_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at _W@std@@SAXAA_WAB_W at Z");
+        p_short_assign = (void*)GetProcAddress(msvcp, "?assign@?$char_traits at G@std@@SAXAAGABG at Z");
+
+        p_char_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at D@std@@SA_NABD0 at Z");
+        p_wchar_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at _W@std@@SA_NAB_W0 at Z");
+        p_short_eq = (void*)GetProcAddress(msvcp, "?eq@?$char_traits at G@std@@SA_NABG0 at Z");
+
+        p_Copy_s = (void*)GetProcAddress(msvcp, "?_Copy_s@?$char_traits at D@std@@SAPADPADIPBDI at Z");
+    }
 
     return TRUE;
 }
@@ -83,7 +95,7 @@ static void test_assign(void)
     char out[4];
 
     if(!p_char_assign || !p_wchar_assign || !p_short_assign) {
-        skip("assign tests skipped\n");
+        win_skip("assign tests skipped\n");
         return;
     }
 
@@ -114,7 +126,7 @@ static void test_equal(void)
     BYTE ret;
 
     if(!p_char_eq || !p_wchar_eq || !p_short_eq) {
-        skip("equal tests skipped\n");
+        win_skip("equal tests skipped\n");
         return;
     }
 
@@ -146,7 +158,7 @@ static void test_Copy_s(void)
     char dest[32], *ret;
 
     if(!p_Copy_s) {
-        skip("Copy_s tests skipped\n");
+        win_skip("Copy_s tests skipped\n");
         return;
     }
 




More information about the wine-cvs mailing list