[PATCH v4 0/3] MR4596: Draft: msvcm80: Add stubs for CrtImplementationDetails::Thow*ModuleLoadException functions
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 -- v4: msvcm80: Add stub for ThrowNestedLoadModuleException function. msvcm80: Add stub for ThrowModuleLoadException(String, Exception) function. msvcm80: Add stub for ThrowModuleLoadException(String) function. https://gitlab.winehq.org/wine/wine/-/merge_requests/4596
From: Vijay Kiran Kamuju <infyquest(a)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(a)System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win64 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXPE$AAVEventHandler(a)System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z @ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)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(a)System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win64 ?RegisterModuleUninitializer@<CrtImplementationDetails>@@YAXPE$AAVEventHandler(a)System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z @ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/4596
From: Vijay Kiran Kamuju <infyquest(a)gmail.com> Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=34537 --- 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(a)System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z @ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException(a)System@@0(a)Z @ stub -arch=win32 ?_Addstd(a)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(a)System@@@Z(ptr) CrtImplementationDetails_RegisterModuleUninitializer @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException -@ stub -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z -@ stub -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z +@ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner +@ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z @ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException(a)System@@0(a)Z @ stub -arch=win32 ?_Addstd(a)ios_base@std@@SAXPAV12@@Z -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/4596
From: Vijay Kiran Kamuju <infyquest(a)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(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner -@ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z -@ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException(a)System@@0(a)Z +@ cdecl -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException +@ cdecl -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException(a)System@@0(a)Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException @ stub -arch=win32 ?_Addstd(a)ios_base@std@@SAXPAV12@@Z @ stub -arch=win64 ?_Addstd(a)ios_base@std@@SAXPEAV12@@Z @ stub ?_Atexit@@YAXP6AXXZ(a)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(a)System@@@Z(ptr) CrtImplementationDetails_ThrowModuleLoadException @ cdecl -arch=win32 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVString(a)System@@P$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner @ cdecl -arch=win64 ?ThrowModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVString(a)System@@PE$AAVException(a)3@@Z(ptr ptr) CrtImplementationDetails_ThrowModuleLoadException_Inner -@ stub -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z -@ stub -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException(a)System@@0(a)Z +@ cdecl -arch=win32 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXP$AAVException(a)System@@0(a)Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException +@ cdecl -arch=win64 ?ThrowNestedModuleLoadException@<CrtImplementationDetails>@@YAXPE$AAVException(a)System@@0(a)Z(ptr ptr) CrtImplementationDetails_ThrowNestedModuleLoadException @ stub -arch=win32 ?_Addstd(a)ios_base@std@@SAXPAV12@@Z @ stub -arch=win64 ?_Addstd(a)ios_base@std@@SAXPEAV12@@Z @ stub ?_Atexit@@YAXP6AXXZ(a)Z -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/4596
On Mon Dec 4 21:04:18 2023 +0000, Zebediah Figura wrote:
Patch 2/3 seems to be missing a newline in the subject message. Done and made sure to shorten the commit messages
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/4596#note_54936
participants (2)
-
Vijay Kiran Kamuju -
Vijay Kiran Kamuju (@infyquest)