[Bug 51465] EVE Online launcher crashes

WineHQ Bugzilla wine-bugs at winehq.org
Wed Jul 21 04:26:13 CDT 2021


https://bugs.winehq.org/show_bug.cgi?id=51465

--- Comment #28 from Jacek Caban <jacek at codeweavers.com> ---
Created attachment 70331
  --> https://bugs.winehq.org/attachment.cgi?id=70331
fix

It's not clear to me that linking to msvcrt.dll would make things much better.
We would then be possibly missing ucrtbase.dll being loaded. On Windows,
ucrtbase.dll ends up being used in quite some cases and I think that usually
both msvcrt.dll and ucrtbase.dll end up being loaded. For a relatively high
level testing, I used a simple test like this:

#include <windows.h>
#include <stdio.h>

int main(int argc, char **argv)
{
    LoadLibraryA(argc > 1 ? argv[1] : "user32.dll");
    printf("%p %p\n", GetModuleHandleW(L"msvcrt.dll"),
GetModuleHandleW(L"ucrtbase.dll"));
    return 0;
}

For the test to make sense, it needs to be compiled with some other msvcrt
version than tested ones. It's not possible with GCC mingw, so I used
llvm-mingw with a command (I will attach the executable for convenience):

x86_64-w64-mingw32-gcc deptest.c -lmsvcr100 -o deptest64.exe

If you try it with DLLs like gdi32.dll or user32.dll, only ucrtbsae.dll is
loaded on Windows 10. If you try it with advapi32.dll, only msvcrt.dll is
loaded. Thus, higher level DLLs pull both of them.

That said, is the attached patch enough to get the game running?

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list