msvcrt: Added implementation of __crtGetStringTypeW.
authorPiotr Caban <piotr@codeweavers.com>
Mon, 19 Apr 2010 08:58:19 +0000 (10:58 +0200)
committerAlexandre Julliard <julliard@winehq.org>
Mon, 19 Apr 2010 13:11:14 +0000 (15:11 +0200)
dlls/msvcr80/msvcr80.spec
dlls/msvcr90/msvcr90.spec
dlls/msvcrt/locale.c
dlls/msvcrt/msvcrt.spec

index d872571cd408a024d6ec16a21530bf11a02ade89..04535b38bd0ca1f4353cf61c50884a591feb9a42 100644 (file)
 @ cdecl __crtCompareStringA(long long str long str long) msvcrt.__crtCompareStringA
 @ cdecl __crtCompareStringW(long long wstr long wstr long) msvcrt.__crtCompareStringW
 @ cdecl __crtGetLocaleInfoW(long long ptr long) msvcrt.__crtGetLocaleInfoW
-@ stub __crtGetStringTypeW
+@ cdecl __crtGetStringTypeW(long long wstr long ptr) msvcrt.__crtGetStringTypeW
 @ cdecl __crtLCMapStringA(long long str long ptr long long long) msvcrt.__crtLCMapStringA
 @ stub __crtLCMapStringW
 @ stub __daylight
index 75740ecfadc28cc004224bcc1cb4e4e524f05302..ae13be471b7a9dfd591c8d0ac6dad273cba1af05 100644 (file)
 @ cdecl __crtCompareStringA(long long str long str long) msvcrt.__crtCompareStringA
 @ cdecl __crtCompareStringW(long long wstr long wstr long) msvcrt.__crtCompareStringW
 @ cdecl __crtGetLocaleInfoW(long long ptr long) msvcrt.__crtGetLocaleInfoW
-@ stub __crtGetStringTypeW
+@ cdecl __crtGetStringTypeW(long long wstr long ptr) msvcrt.__crtGetStringTypeW
 @ cdecl __crtLCMapStringA(long long str long ptr long long long) msvcrt.__crtLCMapStringA
 @ stub __crtLCMapStringW
 @ stub __daylight
index fe369766c09776bc5cef7addece9f3036152e131..fe77b83ba6498627cac3e992fd309433ed87457c 100644 (file)
@@ -54,6 +54,7 @@ unsigned char charmax = CHAR_MAX;
 #define UNLOCK_LOCALE _munlock(_SETLOCALE_LOCK);
 
 #define MSVCRT_LEADBYTE  0x8000
+#define MSVCRT_C1_DEFINED 0x200
 
 /* Friendly country strings & iso codes for synonym support.
  * Based on MS documentation for setlocale().
@@ -457,6 +458,21 @@ int CDECL __crtGetLocaleInfoW( LCID lcid, LCTYPE type, MSVCRT_wchar_t *buffer, i
     return GetLocaleInfoW( lcid, type, buffer, len );
 }
 
+/*********************************************************************
+ *              __crtGetStringTypeW(MSVCRT.@)
+ *
+ * This function was accepting different number of arguments in older
+ * versions of msvcrt.
+ */
+BOOL CDECL __crtGetStringTypeW(DWORD unk, DWORD type,
+        MSVCRT_wchar_t *buffer, int len, WORD *out)
+{
+    FIXME("(unk %x, type %x, wstr %p(%d), %p) partial stub\n",
+            unk, type, buffer, len, out);
+
+    return GetStringTypeW(type, buffer, len, out);
+}
+
 /*********************************************************************
  *             localeconv (MSVCRT.@)
  */
index dffd74981e5d3baba3bab2c4b613b49d06ef768b..f4f9ee8af1ca3f87cf54e6719a08584e5ced4ca3 100644 (file)
 @ cdecl __crtCompareStringA(long long str long str long)
 @ cdecl __crtCompareStringW(long long wstr long wstr long)
 @ cdecl __crtGetLocaleInfoW(long long ptr long)
-# stub __crtGetStringTypeW
+@ cdecl __crtGetStringTypeW(long long wstr long ptr)
 @ cdecl __crtLCMapStringA(long long str long ptr long long long)
 # stub __crtLCMapStringW
 # stub __daylight