From 9730744b859258e932ea94f6721db6756e630c64 Mon Sep 17 00:00:00 2001 From: Piotr Caban Date: Fri, 14 Sep 2012 12:43:43 +0200 Subject: [PATCH] msvcp80: Added codecvt::_Getcat implementation. --- dlls/msvcp80/msvcp80.c | 20 ++++++++++++++++++++ dlls/msvcp80/msvcp80.spec | 8 ++++---- 2 files changed, 24 insertions(+), 4 deletions(-) diff --git a/dlls/msvcp80/msvcp80.c b/dlls/msvcp80/msvcp80.c index 7dcc104f8e5..d42614ac9aa 100644 --- a/dlls/msvcp80/msvcp80.c +++ b/dlls/msvcp80/msvcp80.c @@ -96,6 +96,8 @@ MSVCP_size_t (CDECL *pctype_char__Getcat)(const struct locale_facet**,const stru MSVCP_size_t (CDECL *pctype_wchar__Getcat)(const struct locale_facet**,const struct locale*); MSVCP_size_t (CDECL *pctype_short__Getcat)(const struct locale_facet**,const struct locale*); MSVCP_size_t (CDECL *pcodecvt_char__Getcat)(const struct locale_facet**,const struct locale*); +MSVCP_size_t (CDECL *pcodecvt_wchar__Getcat)(const struct locale_facet**,const struct locale*); +MSVCP_size_t (CDECL *pcodecvt_short__Getcat)(const struct locale_facet**,const struct locale*); MSVCP_size_t (CDECL *pnumpunct_char__Getcat)(const struct locale_facet**,const struct locale*); MSVCP_size_t (CDECL *pnumpunct_wchar__Getcat)(const struct locale_facet**,const struct locale*); MSVCP_size_t (CDECL *pnumpunct_short__Getcat)(const struct locale_facet**,const struct locale*); @@ -115,6 +117,8 @@ static BOOL init_funcs(void) pctype_wchar__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$ctype@_W@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); pctype_short__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$ctype@G@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); pcodecvt_char__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$codecvt@DDH@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); + pcodecvt_wchar__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$codecvt@_WDH@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); + pcodecvt_short__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$codecvt@GDH@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); pnumpunct_char__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$numpunct@D@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); pnumpunct_wchar__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$numpunct@_W@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); pnumpunct_short__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$numpunct@G@std@@SA_KPEAPEBVfacet@locale@2@PEBV42@@Z"); @@ -127,6 +131,8 @@ static BOOL init_funcs(void) pctype_wchar__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$ctype@_W@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); pctype_short__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$ctype@G@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); pcodecvt_char__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$codecvt@DDH@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); + pcodecvt_wchar__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$codecvt@_WDH@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); + pcodecvt_short__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$codecvt@GDH@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); pnumpunct_char__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); pnumpunct_wchar__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$numpunct@_W@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); pnumpunct_short__Getcat = (void*)GetProcAddress(hmod, "?_Getcat@?$numpunct@G@std@@SAIPAPBVfacet@locale@2@PBV42@@Z"); @@ -199,6 +205,20 @@ MSVCP_size_t __cdecl codecvt_char__Getcat(const struct locale_facet **facet) return pcodecvt_char__Getcat(facet, plocale_classic()); } +/* ?_Getcat@?$codecvt@_WDH@std@@SAIPAPBVfacet@locale@2@@Z */ +/* ?_Getcat@?$codecvt@_WDH@std@@SA_KPEAPEBVfacet@locale@2@@Z */ +MSVCP_size_t __cdecl codecvt_wchar__Getcat(const struct locale_facet **facet) +{ + return pcodecvt_wchar__Getcat(facet, plocale_classic()); +} + +/* ?_Getcat@?$codecvt@GDH@std@@SAIPAPBVfacet@locale@2@@Z */ +/* ?_Getcat@?$codecvt@GDH@std@@SA_KPEAPEBVfacet@locale@2@@Z */ +MSVCP_size_t __cdecl codecvt_short__Getcat(const struct locale_facet **facet) +{ + return pcodecvt_short__Getcat(facet, plocale_classic()); +} + /* ?_Getcat@?$numpunct@D@std@@SAIPAPBVfacet@locale@2@@Z */ /* ?_Getcat@?$numpunct@D@std@@SA_KPEAPEBVfacet@locale@2@@Z */ MSVCP_size_t __cdecl numpunct_char__Getcat(const struct locale_facet **facet) diff --git a/dlls/msvcp80/msvcp80.spec b/dlls/msvcp80/msvcp80.spec index 1df2a632689..4790fa57117 100644 --- a/dlls/msvcp80/msvcp80.spec +++ b/dlls/msvcp80/msvcp80.spec @@ -2220,10 +2220,10 @@ @ cdecl -arch=win64 ?_Fpz_func@std@@YAAEA_JXZ() msvcp90.?_Fpz_func@std@@YAAEA_JXZ @ cdecl -arch=win32 ?_Getcat@?$codecvt@DDH@std@@SAIPAPBVfacet@locale@2@@Z(ptr) codecvt_char__Getcat @ cdecl -arch=win64 ?_Getcat@?$codecvt@DDH@std@@SA_KPEAPEBVfacet@locale@2@@Z(ptr) codecvt_char__Getcat -@ stub -arch=win32 ?_Getcat@?$codecvt@GDH@std@@SAIPAPBVfacet@locale@2@@Z -@ stub -arch=win64 ?_Getcat@?$codecvt@GDH@std@@SA_KPEAPEBVfacet@locale@2@@Z -@ stub -arch=win32 ?_Getcat@?$codecvt@_WDH@std@@SAIPAPBVfacet@locale@2@@Z -@ stub -arch=win64 ?_Getcat@?$codecvt@_WDH@std@@SA_KPEAPEBVfacet@locale@2@@Z +@ cdecl -arch=win32 ?_Getcat@?$codecvt@GDH@std@@SAIPAPBVfacet@locale@2@@Z(ptr) codecvt_short__Getcat +@ cdecl -arch=win64 ?_Getcat@?$codecvt@GDH@std@@SA_KPEAPEBVfacet@locale@2@@Z(ptr) codecvt_short__Getcat +@ cdecl -arch=win32 ?_Getcat@?$codecvt@_WDH@std@@SAIPAPBVfacet@locale@2@@Z(ptr) codecvt_wchar__Getcat +@ cdecl -arch=win64 ?_Getcat@?$codecvt@_WDH@std@@SA_KPEAPEBVfacet@locale@2@@Z(ptr) codecvt_wchar__Getcat @ cdecl -arch=win32 ?_Getcat@?$collate@D@std@@SAIPAPBVfacet@locale@2@@Z(ptr) collate_char__Getcat @ cdecl -arch=win64 ?_Getcat@?$collate@D@std@@SA_KPEAPEBVfacet@locale@2@@Z(ptr) collate_char__Getcat @ cdecl -arch=win32 ?_Getcat@?$collate@G@std@@SAIPAPBVfacet@locale@2@@Z(ptr) collate_short__Getcat