https://bugs.winehq.org/show_bug.cgi?id=47970
--- Comment #22 from Daniel Bomar dbdaniel42@gmail.com --- (In reply to Zebediah Figura from comment #18)
(In reply to Daniel Bomar from comment #17)
I did some testing on this using the Wine sources from git and I can confirm a regression. With all staging patches applied:
Last known working version: v5.9 (game seems to fully work and I was able to complete a game online) First known bad version: v.5.10 (game does not launch)
I was going to do a more thorough bisect but the issue is the game seems to depend on multiple staging patches in order to launch. I tried compiling with only ntdll-x86_64_SegDs, ntdll-WRITECOPY, and user32-InternalGetWindowIcon but this configuration failed to launch the game on v5.9.
The wiki page on regression testing states that when staging patches are required, the next step is to narrow down which patches are required but I'm a little stuck here as I tried the only 3 patches mentioned in bug reports and it still does not work. I'm only able to get it to work by applying all patches.
If anyone knows which patches are required, please let me know and I can do a better bisect.
One thing you can do is to reverse-bisect between wine-staging and upstream wine. Of course, that's not ideal in its own ways. It's a rather unfortunate case when a game depends on several wine-staging patch sets.
Another possible approach, that may be helpful enough here, is to try individual wine-staging rebase versions between 5.9 and 5.10 That doesn't constitute a full bisect, of course, but would at least narrow down to the commits for a particular day, which may be enough of a clue in itself to make a good guess.
Thanks for the advice. I just uploaded the results of the bisect plus the error message I was getting from the bad revisions. I wasn't sure how to reverse-bisect between two different git repositories so I started with the 2nd method you mentioned. That showed the first bad commit was a rebase so I used that information to do a bisect on upstream Wine. I had to do a bit of manual fiddling with the patches to get the intermediate builds to compile but I think my results are correct.
# first bad commit: [be0eb9c92eb7a4fcd9d0d48568c8ed5e8326ef0b] ntdll: Move the thread startup code to the Unix library