msvcp90: Pass RTTI base pointer from DllMain.
This commit is contained in:
parent
8060752c09
commit
d161abb9b3
|
@ -751,10 +751,9 @@ void throw_exception(exception_type et, const char *str)
|
|||
}
|
||||
}
|
||||
|
||||
void init_exception(void)
|
||||
void init_exception(void *base)
|
||||
{
|
||||
#ifdef __x86_64__
|
||||
void *base = GetModuleHandleA("msvcp90.dll");
|
||||
init_type_info_rtti(base);
|
||||
init_exception_rtti(base);
|
||||
init_bad_alloc_rtti(base);
|
||||
|
|
|
@ -12921,10 +12921,9 @@ struct {
|
|||
/* ?_Ptr_wclog@std@@3PEAV?$basic_ostream@_WU?$char_traits@_W@std@@@1@EA */
|
||||
basic_ostream_wchar *_Ptr_wclog = &wclog.obj;
|
||||
|
||||
void init_io(void)
|
||||
void init_io(void *base)
|
||||
{
|
||||
#ifdef __x86_64__
|
||||
void *base = GetModuleHandleA("msvcp90.dll");
|
||||
init_iosb_rtti(base);
|
||||
init_ios_base_rtti(base);
|
||||
init_basic_ios_char_rtti(base);
|
||||
|
|
|
@ -8739,10 +8739,9 @@ void __asm_dummy_vtables(void) {
|
|||
}
|
||||
#endif
|
||||
|
||||
void init_locale(void)
|
||||
void init_locale(void *base)
|
||||
{
|
||||
#ifdef __x86_64__
|
||||
void *base = GetModuleHandleA("msvcp90.dll");
|
||||
init_locale_facet_rtti(base);
|
||||
init_collate_char_rtti(base);
|
||||
init_collate_wchar_rtti(base);
|
||||
|
|
|
@ -463,7 +463,7 @@ ostreambuf_iterator_wchar* __thiscall num_put_wchar_put_uint64(const num_put*, o
|
|||
ostreambuf_iterator_wchar* __thiscall num_put_wchar_put_bool(const num_put*, ostreambuf_iterator_wchar*,
|
||||
ostreambuf_iterator_wchar, ios_base*, wchar_t, MSVCP_bool);
|
||||
|
||||
void init_exception(void);
|
||||
void init_locale(void);
|
||||
void init_io(void);
|
||||
void init_exception(void*);
|
||||
void init_locale(void*);
|
||||
void init_io(void*);
|
||||
void free_io(void);
|
||||
|
|
|
@ -90,9 +90,9 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved)
|
|||
case DLL_PROCESS_ATTACH:
|
||||
init_cxx_funcs();
|
||||
init_lockit();
|
||||
init_exception();
|
||||
init_locale();
|
||||
init_io();
|
||||
init_exception(hinstDLL);
|
||||
init_locale(hinstDLL);
|
||||
init_io(hinstDLL);
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
free_io();
|
||||
|
|
Loading…
Reference in New Issue