https://bugs.winehq.org/show_bug.cgi?id=40460
Bug ID: 40460 Summary: winetricks xna31 and dotnet20sp2 fail Product: Wine Version: 1.9.7 Hardware: x86 OS: Linux Status: NEW Keywords: download, Installer, regression Severity: normal Priority: P2 Component: kernel32 Assignee: wine-bugs@winehq.org Reporter: austinenglish@gmail.com CC: michael@fds-team.de Regression SHA1: d8599db40ada552cecf11235cf770112b33fdf6a Distribution: Debian
Regression, introduced by: d8599db40ada552cecf11235cf770112b33fdf6a is the first bad commit commit d8599db40ada552cecf11235cf770112b33fdf6a Author: Michael Müller michael@fds-team.de Date: Tue Apr 5 16:27:55 2016 +0200
krnl386.exe16: Emulate 'mov Eb, Gb' instruction on x86 processor architecture.
Similar to the implementation in ntoskrnl.exe.
Signed-off-by: Michael Müller michael@fds-team.de Signed-off-by: Sebastian Lackner sebastian@fds-team.de Signed-off-by: Alexandre Julliard julliard@winehq.org
:040000 040000 2db7099d0afc07f305b8ebb22e25cedf9f410bc3 6cb041554b7f3d724488c7384653242c56f2e9c4 M dlls
https://bugs.winehq.org/show_bug.cgi?id=40460
Sebastian Lackner sebastian@fds-team.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |sebastian@fds-team.de
--- Comment #1 from Sebastian Lackner sebastian@fds-team.de --- Could you please double-check that the regression test was done correctly? I cannot reproduce the issue here with wine-git and latest winetricks. Also please note that the regression commit only affects Win 3.1 applications, and I doubt that dotnet2.0 is such an executable. Are any special steps required to reproduce the issue?
https://bugs.winehq.org/show_bug.cgi?id=40460
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Regression SHA1|d8599db40ada552cecf11235cf7 |df77e490d89a0582fde621d54f8 |70112b33fdf6a |34acfd9588ef9
--- Comment #2 from Austin English austinenglish@gmail.com --- (In reply to Sebastian Lackner from comment #1)
Could you please double-check that the regression test was done correctly? I cannot reproduce the issue here with wine-git and latest winetricks. Also please note that the regression commit only affects Win 3.1 applications, and I doubt that dotnet2.0 is such an executable. Are any special steps required to reproduce the issue?
Well, you're right that it wasn't that commit, it was: austin@austin2:~/wine-git$ git bisect bad df77e490d89a0582fde621d54f834acfd9588ef9 is the first bad commit commit df77e490d89a0582fde621d54f834acfd9588ef9 Author: Sebastian Lackner sebastian@fds-team.de Date: Tue Apr 5 16:20:05 2016 +0200
advapi32: Fix return value of RegNotifyChangeKeyValue for pending events.
Signed-off-by: Sebastian Lackner sebastian@fds-team.de Signed-off-by: Alexandre Julliard julliard@winehq.org
:040000 040000 92dd6b353e53d65eeff6d6769d707d2503a3ed3d 2db7099d0afc07f305b8ebb22e25cedf9f410bc3 M dlls
I can reproduce in wine-1.9.7-225-g1ccc521, and reverting your patch works around it for me.
Nothing special I can think of. I was testing on a remote machine over ssh with X11 fowarding, but I can also reproduce locally, so it's not that.
https://bugs.winehq.org/show_bug.cgi?id=40460
--- Comment #3 from Dmitry Timoshkov dmitry@baikal.ru --- I can't reproduce a failure with running 'winetricks xna31' either, installation finishes successfully here. I've freshly updated winetricks just in case.
https://bugs.winehq.org/show_bug.cgi?id=40460
--- Comment #4 from Austin English austinenglish@gmail.com --- Created attachment 54229 --> https://bugs.winehq.org/attachment.cgi?id=54229 terminal output for winetricks xna31
Log made with wine-1.9.8 and winetricks 20160329 - sha1sum: 94628c5d7d41b5388fd7623705bccd74de26ca1d
https://bugs.winehq.org/show_bug.cgi?id=40460
NP-Hardass np.hardass@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |np.hardass@gmail.com
--- Comment #5 from NP-Hardass np.hardass@gmail.com --- I see the same thing as Austin on Gentoo with wine-1.9.8 and winetricks 20160329
https://bugs.winehq.org/show_bug.cgi?id=40460
--- Comment #6 from Sebastian Lackner sebastian@fds-team.de --- When I just call "winetricks xna31" I'm still not able to see any kind of failure here on my machine. However, I played around a bit more, and when I add the "-q" switch it indeed fails. Is that also what you guys use?
On the first sight, it seems to be a race-condition in winetricks. Installation of dotnet20sp2 is started before dotnet20 is fully finished. Before the commit, RegNotifyChangeKeyValue always returned immediately with a failure, now the application will properly wait. Those timing differences are probably what causes the "regression".
Proposed change for winetricks:
--- snip --- --- a/src/winetricks +++ b/src/winetricks @@ -5800,6 +5800,7 @@ load_dotnet20sp2() w_call remove_mono
w_call dotnet20 + $WINESERVER -w
# FIXME: verify on pristine windows XP: if w_workaround_wine_bug 34803 --- snip ---
BTW: At some places winetricks uses $DRIVE_C which looks like an undefined variable to me.
https://bugs.winehq.org/show_bug.cgi?id=40460
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |NOTOURBUG Status|NEW |RESOLVED
--- Comment #7 from Austin English austinenglish@gmail.com --- (In reply to Sebastian Lackner from comment #6)
When I just call "winetricks xna31" I'm still not able to see any kind of failure here on my machine. However, I played around a bit more, and when I add the "-q" switch it indeed fails. Is that also what you guys use?
Yes, my mistake, I had included that originally. GUIs are for suckers :p
On the first sight, it seems to be a race-condition in winetricks. Installation of dotnet20sp2 is started before dotnet20 is fully finished. Before the commit, RegNotifyChangeKeyValue always returned immediately with a failure, now the application will properly wait. Those timing differences are probably what causes the "regression".
Nice find.
Proposed change for winetricks:
--- snip --- --- a/src/winetricks +++ b/src/winetricks @@ -5800,6 +5800,7 @@ load_dotnet20sp2() w_call remove_mono
w_call dotnet20
$WINESERVER -w
# FIXME: verify on pristine windows XP: if w_workaround_wine_bug 34803
--- snip ---
That wasn't enough for me, I also tried it after both w_call dotnet20 and the dotnet20sp2 installer, but that only works sometimes.
BTW: At some places winetricks uses $DRIVE_C which looks like an undefined variable to me.
It's set in winetricks_set_wineprefix(), which is called from w_do_call().
https://bugs.winehq.org/show_bug.cgi?id=40460
--- Comment #8 from Sebastian Lackner sebastian@fds-team.de --- (In reply to Austin English from comment #7)
That wasn't enough for me, I also tried it after both w_call dotnet20 and the dotnet20sp2 installer, but that only works sometimes.
Hm, here it works pretty reliable. I'll see if I can reproduce the issue when I run the testcase in a loop. ;)
BTW: At some places winetricks uses $DRIVE_C which looks like an undefined variable to me.
It's set in winetricks_set_wineprefix(), which is called from w_do_call().
I only see W_DRIVE_C there, but not DRIVE_C (unless some weird eval magic is involved to set it).
https://bugs.winehq.org/show_bug.cgi?id=40460
Michael Stefaniuc mstefani@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Blocks| |39863
https://bugs.winehq.org/show_bug.cgi?id=40460
--- Comment #9 from Austin English austinenglish@gmail.com --- (In reply to Sebastian Lackner from comment #8)
(In reply to Austin English from comment #7)
That wasn't enough for me, I also tried it after both w_call dotnet20 and the dotnet20sp2 installer, but that only works sometimes.
Hm, here it works pretty reliable. I'll see if I can reproduce the issue when I run the testcase in a loop. ;)
BTW: At some places winetricks uses $DRIVE_C which looks like an undefined variable to me.
It's set in winetricks_set_wineprefix(), which is called from w_do_call().
I only see W_DRIVE_C there, but not DRIVE_C (unless some weird eval magic is involved to set it).
Thanks for pointing that out. It's fixed here: https://github.com/Winetricks/winetricks/commit/cb6f280f5a4287dbaba0317440f8...
but even with that and: diff --git a/src/winetricks b/src/winetricks index c547350..f933a16 100755 --- a/src/winetricks +++ b/src/winetricks @@ -5916,12 +5916,14 @@ load_dotnet20sp2() w_call remove_mono
w_call dotnet20 + $WINESERVER -w
# FIXME: verify on pristine Windows XP: if w_workaround_wine_bug 34803 then "$WINE" reg delete 'HKLM\Software\Microsoft.NETFramework\v2.0.50727\SBSDisabled' /f fi + $WINESERVER -w
cd "$W_CACHE/$W_PACKAGE" w_ahk_do "
I still get: err:msi:ITERATE_Actions Execution halted, action L"DD_CA_ScheduleNgenServiceVersionCheck_X86.3643236F_FC70_11D3_A536_0090278A1BB8" returned 1603
in wine-1.9.18.
https://bugs.winehq.org/show_bug.cgi?id=40460
winetaste@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetaste@gmx.net
--- Comment #10 from winetaste@gmx.net --- (In reply to Austin English from comment #9)
err:msi:ITERATE_Actions Execution halted, action L"DD_CA_ScheduleNgenServiceVersionCheck_X86. 3643236F_FC70_11D3_A536_0090278A1BB8" returned 1603
Still in wine-2.0-160-g152b240 with wintricks 20170101 - sha1sum: ed948de8a10666cab5fe393765a9804c532639d0
https://bugs.winehq.org/show_bug.cgi?id=40460
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #11 from Austin English austinenglish@gmail.com --- Closing.
https://bugs.winehq.org/show_bug.cgi?id=40460
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|CLOSED |RESOLVED
--- Comment #12 from Austin English austinenglish@gmail.com --- This was inadvertently caught up in my unclosed bugs filter. NOTOURBUG should only be closed when fixed upstream.
Setting back to RESOLVED NOTOURBUG.
Sorry for the spam.