Add stubs for CrtImplementationDetails::Thow*ModuleLoadException functions
This will help some applications not crashing. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=34537
Next part will be moving this code to msvcp and to make sure Cin, other related classes are implemented for msvcmxx.dlls
-- v3: msvcm80: Add stub for
From: Vijay Kiran Kamuju infyquest@gmail.com
--- dlls/msvcm80/msvcm80.spec | 4 ++-- dlls/msvcm80/msvcm_main.c | 6 ++++++ dlls/msvcm90/msvcm90.spec | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcm80/msvcm80.spec b/dlls/msvcm80/msvcm80.spec index 86e50bfb402..b35a0ba7d89 100644 --- a/dlls/msvcm80/msvcm80.spec +++ b/dlls/msvcm80/msvcm80.spec @@ -3,8 +3,8 @@ @ cdecl ?DoDllLanguageSupportValidation@<CrtImplementationDetails>@@YAXXZ() CrtImplementationDetails_DoDllLanguageSupportValidation @ cdecl -arch=win32 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXP$AAVEventHandler@System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win64 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXPE$AAVEventHandler@System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z @ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z diff --git a/dlls/msvcm80/msvcm_main.c b/dlls/msvcm80/msvcm_main.c index 9ebf809ab54..badb9a1b5f8 100644 --- a/dlls/msvcm80/msvcm_main.c +++ b/dlls/msvcm80/msvcm_main.c @@ -43,3 +43,9 @@ void __cdecl __setusermatherr_m(void *handler) { FIXME("%p: stub\n", handler); } + +/* void __cdecl <CrtImplementationDetails>::ThrowModuleLoadException(System.String^) */ +void __cdecl CrtImplementationDetails_ThrowModuleLoadException(void* message) +{ + FIXME("%p: stub\n", message); +} diff --git a/dlls/msvcm90/msvcm90.spec b/dlls/msvcm90/msvcm90.spec index 9d57dc75c08..80c661e775e 100644 --- a/dlls/msvcm90/msvcm90.spec +++ b/dlls/msvcm90/msvcm90.spec @@ -3,8 +3,8 @@ @ cdecl ?DoDllLanguageSupportValidation@<CrtImplementationDetails>@@YAXXZ() CrtImplementationDetails_DoDllLanguageSupportValidation @ cdecl -arch=win32 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXP$AAVEventHandler@System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win64 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXPE$AAVEventHandler@System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z @ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z
From: Vijay Kiran Kamuju infyquest@gmail.com
--- dlls/msvcm80/msvcm80.spec | 4 ++-- dlls/msvcm80/msvcm_main.c | 6 ++++++ dlls/msvcm90/msvcm90.spec | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcm80/msvcm80.spec b/dlls/msvcm80/msvcm80.spec index b35a0ba7d89..5f9c10715f0 100644 --- a/dlls/msvcm80/msvcm80.spec +++ b/dlls/msvcm80/msvcm80.spec @@ -5,8 +5,8 @@ @ cdecl -arch=win64 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXPE$AAVEventHandler@System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z @ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException@System@@0@Z @ stub -arch=win32 ?_Addstd@ios_base@std@@SAXPAV12@@Z diff --git a/dlls/msvcm80/msvcm_main.c b/dlls/msvcm80/msvcm_main.c index badb9a1b5f8..d963e18863d 100644 --- a/dlls/msvcm80/msvcm_main.c +++ b/dlls/msvcm80/msvcm_main.c @@ -49,3 +49,9 @@ void __cdecl CrtImplementationDetails_ThrowModuleLoadException(void* message) { FIXME("%p: stub\n", message); } + +/* void __cdecl <CrtImplementationDetails>::ThrowModuleLoadException(System.String^, System.Exception^) */ +void __cdecl CrtImplementationDetails_ThrowModuleLoadException_Inner(void* message, void* inner) +{ + FIXME("%p %p: stub\n", message, inner); +} diff --git a/dlls/msvcm90/msvcm90.spec b/dlls/msvcm90/msvcm90.spec index 80c661e775e..f9e3d0410de 100644 --- a/dlls/msvcm90/msvcm90.spec +++ b/dlls/msvcm90/msvcm90.spec @@ -5,8 +5,8 @@ @ cdecl -arch=win64 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXPE$AAVEventHandler@System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z @ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException@System@@0@Z @ stub -arch=win32 ?_Addstd@ios_base@std@@SAXPAV12@@Z
From: Vijay Kiran Kamuju infyquest@gmail.com
--- dlls/msvcm80/msvcm80.spec | 4 ++-- dlls/msvcm80/msvcm_main.c | 6 ++++++ dlls/msvcm90/msvcm90.spec | 4 ++-- 3 files changed, 10 insertions(+), 4 deletions(-)
diff --git a/dlls/msvcm80/msvcm80.spec b/dlls/msvcm80/msvcm80.spec index 5f9c10715f0..80fe7afa820 100644 --- a/dlls/msvcm80/msvcm80.spec +++ b/dlls/msvcm80/msvcm80.spec @@ -7,8 +7,8 @@ @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner -@ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z -@ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException@System@@0@Z +@ cdecl -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException +@ cdecl -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException@System@@0@Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException @ stub -arch=win32 ?_Addstd@ios_base@std@@SAXPAV12@@Z @ stub -arch=win64 ?_Addstd@ios_base@std@@SAXPEAV12@@Z @ stub ?_Atexit@@YAXP6AXXZ@Z diff --git a/dlls/msvcm80/msvcm_main.c b/dlls/msvcm80/msvcm_main.c index d963e18863d..4b690b415cc 100644 --- a/dlls/msvcm80/msvcm_main.c +++ b/dlls/msvcm80/msvcm_main.c @@ -55,3 +55,9 @@ void __cdecl CrtImplementationDetails_ThrowModuleLoadException_Inner(void* messa { FIXME("%p %p: stub\n", message, inner); } + +/* void __cdecl <CrtImplementationDetails>::ThrowNestedModuleLoadException(System.Exception^, System.Exception^) */ +void __cdecl CrtImplementationDetails_ThrowNestedModuleLoadException(void *inner, void* nested) +{ + FIXME("%p: stub\n", nested); +} diff --git a/dlls/msvcm90/msvcm90.spec b/dlls/msvcm90/msvcm90.spec index f9e3d0410de..3f22cda25e8 100644 --- a/dlls/msvcm90/msvcm90.spec +++ b/dlls/msvcm90/msvcm90.spec @@ -7,8 +7,8 @@ @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString@System@@P$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString@System@@PE$AAVException@3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner -@ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z -@ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException@System@@0@Z +@ cdecl -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException@System@@0@Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException +@ cdecl -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException@System@@0@Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException @ stub -arch=win32 ?_Addstd@ios_base@std@@SAXPAV12@@Z @ stub -arch=win64 ?_Addstd@ios_base@std@@SAXPEAV12@@Z @ stub ?_Atexit@@YAXP6AXXZ@Z
Patch 2/3 seems to be missing a newline in the subject message.