Closed gverm closed 3 years ago
Thanks for the report @gverm.
Do you want to attempt a fix? If not, I can, but it will likely be a week or two before I do.
If you don't have time, it would be helpful if you could include the context from IRC (I don't know that I was online at the time).
FWIW, I suspect this broke more than vcrun*. When I ran the tests last night, I noticed breakage in some other apps, in particularly galliumnine (but didn't investigate, as I've noticed that 6.4/6.5 have have various breakages). I ended up using 5.0 / 6.0 instead to get a better idea of what was broken on the wine versus winetricks side.
While I have no problem fixing things on the winetricks side when needed, I don't have as much time lately for the wine side. As a result, I don't have as much time/interest investigating if regressions are wine bugs or newly intended behavior.
@austin987 I was planning on having a look at the vcrun* stuff later this week. I've pasted the IRC convo below, hopefully that helps.
As for other regressions, a lot of them were reported and fixed, some after 6.5, so 6.6 should be a better release.
gverm With current wine-git it's not possible anymore to remove builtin ucrtbase before installing native (like winetricks does), is this to be expected? It still works with wine-6.5 and bisecting is proving to be difficult due to other issues.
julliard gverm: if the installer depends on ucrtbase you can't remove it, yes
gverm julliard: I'm guessing this is due to your recent loader changes and isn't going to change?
nsivov are you sure installer uses ucrtbase itself? in other words what exactly fails? or is it because wine is linked to it
julliard gverm: yes, the idea is that we need to have a proper file corresponding to each loaded module
gverm nsivov: Library ucrtbase.dll (which is needed by L"C:\windows\system32\sechost.dll") not found I get a bunch of these. winetricks currently removes builtin ucrtbase, because builtin has a higher version number and the installer won't overwrite it. julliard: Thanks, good to know.
nsivov right, so that's because with link PE modules to it, instead of msvcrt like window does linking to msvcrt will have the same issue presumably if you wanted to install native msvcrt
I'm using the winetricks-git package on Arch (the sha256sum shows as aac2be702936c7d9f69044a5b5b5f8fdb78303bc5e54e84e24cdaec3ffd3ad1c
) as well as Wine 6.14 and I'm getting the same issue. The PR did not seem to fix it, unfortunately.
a new snapshot is needed for a fix, this is really bad in terms of crashing peoples prefixes beyond repair
Some change (can't seem to be able to bisect because of unrelated problems) after wine-6.5 is breaking the vcrun verbs that remove ucrtbase before running the installer.
According to Julliard (on IRC) this is to be expected with the recent loader changes, so we'll have to find another way to fix it.
I would suggest instead of removing ucrtbase, extracting it from the setup and replacing builtin before running the setup.