Piotr Caban : msvcp110: Add _Facet_base_vtable export.

Alexandre Julliard julliard at winehq.org
Tue Dec 27 14:44:33 CST 2016


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

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Tue Dec 27 14:23:49 2016 +0100

msvcp110: Add _Facet_base_vtable export.

Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcp110/msvcp110.spec         | 2 +-
 dlls/msvcp120/msvcp120.spec         | 2 +-
 dlls/msvcp120_app/msvcp120_app.spec | 2 +-
 dlls/msvcp140/msvcp140.spec         | 2 +-
 dlls/msvcp90/locale.c               | 8 +++++++-
 5 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/dlls/msvcp110/msvcp110.spec b/dlls/msvcp110/msvcp110.spec
index e890257..b09a1d4 100644
--- a/dlls/msvcp110/msvcp110.spec
+++ b/dlls/msvcp110/msvcp110.spec
@@ -949,7 +949,7 @@
 @ extern ??_7?$time_put at DV?$ostreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@6B@ MSVCP_time_put_char_vtable
 @ extern ??_7?$time_put at GV?$ostreambuf_iterator at GU?$char_traits at G@std@@@std@@@std@@6B@ MSVCP_time_put_short_vtable
 @ extern ??_7?$time_put at _WV?$ostreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@6B@ MSVCP_time_put_wchar_vtable
-# extern ??_7_Facet_base at std@@6B@
+@ extern ??_7_Facet_base at std@@6B@ MSVCP__Facet_base_vtable
 @ extern ??_7_Locimp at locale@std@@6B@ MSVCP_locale__Locimp_vtable
 @ extern ??_7_Pad at std@@6B@ MSVCP__Pad_vtable
 @ extern ??_7codecvt_base at std@@6B@ MSVCP_codecvt_base_vtable
diff --git a/dlls/msvcp120/msvcp120.spec b/dlls/msvcp120/msvcp120.spec
index 33812b9..863ead9 100644
--- a/dlls/msvcp120/msvcp120.spec
+++ b/dlls/msvcp120/msvcp120.spec
@@ -949,7 +949,7 @@
 @ extern ??_7?$time_put at DV?$ostreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@6B@ MSVCP_time_put_char_vtable
 @ extern ??_7?$time_put at GV?$ostreambuf_iterator at GU?$char_traits at G@std@@@std@@@std@@6B@ MSVCP_time_put_short_vtable
 @ extern ??_7?$time_put at _WV?$ostreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@6B@ MSVCP_time_put_wchar_vtable
-# extern ??_7_Facet_base at std@@6B@
+@ extern ??_7_Facet_base at std@@6B@ MSVCP__Facet_base_vtable
 @ extern ??_7_Locimp at locale@std@@6B@ MSVCP_locale__Locimp_vtable
 @ extern ??_7_Pad at std@@6B@ MSVCP__Pad_vtable
 @ extern ??_7codecvt_base at std@@6B@ MSVCP_codecvt_base_vtable
diff --git a/dlls/msvcp120_app/msvcp120_app.spec b/dlls/msvcp120_app/msvcp120_app.spec
index 265d2be..438cddb 100644
--- a/dlls/msvcp120_app/msvcp120_app.spec
+++ b/dlls/msvcp120_app/msvcp120_app.spec
@@ -949,7 +949,7 @@
 @ extern ??_7?$time_put at DV?$ostreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@6B@ msvcp120.??_7?$time_put at DV?$ostreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@6B@
 @ extern ??_7?$time_put at GV?$ostreambuf_iterator at GU?$char_traits at G@std@@@std@@@std@@6B@ msvcp120.??_7?$time_put at GV?$ostreambuf_iterator at GU?$char_traits at G@std@@@std@@@std@@6B@
 @ extern ??_7?$time_put at _WV?$ostreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@6B@ msvcp120.??_7?$time_put at _WV?$ostreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@6B@
-# extern ??_7_Facet_base at std@@6B@
+@ extern ??_7_Facet_base at std@@6B@ msvcp120.??_7_Facet_base at std@@6B@
 @ extern ??_7_Locimp at locale@std@@6B@ msvcp120.??_7_Locimp at locale@std@@6B@
 @ extern ??_7_Pad at std@@6B@ msvcp120.??_7_Pad at std@@6B@
 @ extern ??_7codecvt_base at std@@6B@ msvcp120.??_7codecvt_base at std@@6B@
diff --git a/dlls/msvcp140/msvcp140.spec b/dlls/msvcp140/msvcp140.spec
index 36e2cad..fb3d709 100644
--- a/dlls/msvcp140/msvcp140.spec
+++ b/dlls/msvcp140/msvcp140.spec
@@ -954,7 +954,7 @@
 @ extern ??_7?$time_put at DV?$ostreambuf_iterator at DU?$char_traits at D@std@@@std@@@std@@6B@ MSVCP_time_put_char_vtable
 @ extern ??_7?$time_put at GV?$ostreambuf_iterator at GU?$char_traits at G@std@@@std@@@std@@6B@ MSVCP_time_put_short_vtable
 @ extern ??_7?$time_put at _WV?$ostreambuf_iterator at _WU?$char_traits at _W@std@@@std@@@std@@6B@ MSVCP_time_put_wchar_vtable
-# extern ??_7_Facet_base at std@@6B@
+@ extern ??_7_Facet_base at std@@6B@ MSVCP__Facet_base_vtable
 @ extern ??_7_Locimp at locale@std@@6B@ MSVCP_locale__Locimp_vtable
 @ extern ??_7codecvt_base at std@@6B@ MSVCP_codecvt_base_vtable
 @ extern ??_7ctype_base at std@@6B@ MSVCP_ctype_base_vtable
diff --git a/dlls/msvcp90/locale.c b/dlls/msvcp90/locale.c
index fe5bd33..d2fce47 100644
--- a/dlls/msvcp90/locale.c
+++ b/dlls/msvcp90/locale.c
@@ -11224,7 +11224,7 @@ size_t __cdecl wcsrtombs(char *dst, const wchar_t **pstr, size_t n, mbstate_t *s
 }
 #endif
 
-
+DEFINE_RTTI_DATA0(_Facet_base, 0, ".?AV_Facet_base at std@@")
 DEFINE_RTTI_DATA0(locale_facet, 0, ".?AVfacet at locale@std@@")
 DEFINE_RTTI_DATA1(locale__Locimp, 0, &locale_facet_rtti_base_descriptor, ".?AV_Locimp at locale@std@@")
 DEFINE_RTTI_DATA1(collate_char, 0, &locale_facet_rtti_base_descriptor, ".?AV?$collate at D@std@@")
@@ -11262,6 +11262,11 @@ DEFINE_RTTI_DATA2(time_get_char, 0, &time_base_rtti_base_descriptor, &locale_fac
 #ifndef __GNUC__
 void __asm_dummy_vtables(void) {
 #endif
+    __ASM_VTABLE(_Facet_base,
+            VTABLE_ADD_FUNC(locale_facet_vector_dtor)
+            VTABLE_ADD_FUNC(locale_facet__Incref)
+            VTABLE_ADD_FUNC(locale_facet__Incref)
+            );
     __ASM_VTABLE(locale_facet,
             VTABLE_ADD_FUNC(locale_facet_vector_dtor)
 #if _MSVCP_VER >= 110
@@ -11608,6 +11613,7 @@ void __asm_dummy_vtables(void) {
 void init_locale(void *base)
 {
 #ifdef __x86_64__
+    init__Facet_base_rtti(base);
     init_locale_facet_rtti(base);
     init_locale__Locimp_rtti(base);
     init_collate_char_rtti(base);




More information about the wine-cvs mailing list