22 Nov
2022
22 Nov
'22
2:02 p.m.
This makes it possible to detect modules that weren't unmapped from dlclose, and that we should not fixup again. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49640 This usually happens with C++ winelibs, where some C++ symbols may be inlined into the winelib, then later resolved in preference over other symbol definitions when libstdc++ loads. This results in circular dependency between the winelib and libstdc++, making dlclose no-op. In this case, reloading the lib later and calling `map_so_dll` on it again will fixup the RVAs again, ending up with invalid addresses. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/1498