https://bugs.winehq.org/show_bug.cgi?id=42641
Bug ID: 42641 Summary: winetricks ie8_kb2936068 installer fails with error Product: Wine Version: 1.7.53 Hardware: x86 OS: Linux Status: NEW Keywords: download, Installer, regression Severity: normal Priority: P2 Component: gdi32 Assignee: wine-bugs@winehq.org Reporter: austinenglish@gmail.com Regression SHA1: 6f7dfe2cea4fdb9b61775023659193421c920278 Distribution: Gentoo
Created attachment 57574 --> https://bugs.winehq.org/attachment.cgi?id=57574 +font trace
Regression introduced by: 6f7dfe2cea4fdb9b61775023659193421c920278 is the first bad commit commit 6f7dfe2cea4fdb9b61775023659193421c920278 Author: Nikolay Sivov nsivov@codeweavers.com Date: Sun Oct 4 12:48:48 2015 +0300
gdi32: Implement GetFontFileInfo().
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com
:040000 040000 ad96260a965b1b1ad63f63ef861fc1150dbf67c7 a6aa54b4ed84424b898a12b0cd38b878290714da M dlls
To reproduce: winetricks -q ie8_kb2936068
https://bugs.winehq.org/show_bug.cgi?id=42641
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |bunglehead@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=42641
--- Comment #1 from Nikolay Sivov bunglehead@gmail.com --- This function does not have a TRACE, could you attach +relay,+font,+tid?
https://bugs.winehq.org/show_bug.cgi?id=42641
--- Comment #2 from Austin English austinenglish@gmail.com --- Created attachment 57575 --> https://bugs.winehq.org/attachment.cgi?id=57575 relay,tid,font
https://bugs.winehq.org/show_bug.cgi?id=42641
--- Comment #3 from Nikolay Sivov bunglehead@gmail.com --- I don't see it in relay log too, will try it myself later. Unless winetricks is pulling IE8 for Win7+ it would be strange for it to use this function.
https://bugs.winehq.org/show_bug.cgi?id=42641
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|bunglehead@gmail.com |
--- Comment #4 from Nikolay Sivov bunglehead@gmail.com --- I can't reproduce this with current wine, sometimes it hangs at the end with update.exe still around, but I remember it happened before. But I don't get "Installation failed" message.
https://bugs.winehq.org/show_bug.cgi?id=42641
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #5 from Anastasius Focht focht@gmx.net --- Hello folks,
relevant part of your relay log:
--- snip --- ... 0024:Call setupapi.SetupFindFirstLineW(00141118,0033b130 L"Test.IE8Installed.Section",00000000,0033b0e4) ret=0108142c ... 0024:Ret setupapi.SetupFindFirstLineW() retval=00000001 ret=0108142c ... 0024:Call KERNEL32.FindFirstFileA(0033ab58 "C:\Program Files\Internet Explorer\iexplore.exe",0033a0a4) ret=01073f67 ... 0024:Ret KERNEL32.FindFirstFileA() retval=ffffffff ret=01073f67 ... 0024:Call msvcrt._vsnprintf(0033a893,000007f7,01029678 "Fist Condition in %ws Failed",0033b0c8) ret=010719d1 0024:Call KERNEL32.WideCharToMultiByte(00000000,00000000,0033b130 L"Test.IE8Installed.Section",00000019,00000000,00000000,00000000,00000000) ret=7e4891eb ... 0024:Call KERNEL32.GetLastError() ret=0105c059 0024:Ret KERNEL32.GetLastError() retval=000004c7 ret=0105c059 ... 0024:Call msvcrt.exit(00000643) ret=0106bedd ... 0024:Call KERNEL32.ExitProcess(00000643) ret=7e44746c ... --- snip ---
'xxx/update/update_SP3QFE.inf':
--- snip --- ... [IEVersion] MinVersion = "8,0,6001,18702" MaxVersion = "8,1,0,0"
[Test.IE8Installed.Section]
GreatOrEqualOp=CheckFileVer,Test.InternetExplorer.Files,iexplore.exe,>=,8.0.6001.18702 LessOp=CheckFileVer,Test.InternetExplorer.Files,iexplore.exe,<,8.1.0.0
[Test.IE8SetupRunning.Section] EqualOp=CheckReg,HKLM,"SOFTWARE\Microsoft\Internet Explorer\Setup\8.0\WU","ForcePostUpdateInstall",0x10001,"==",1
[Test.InternetExplorer.Files] iexplore.exe
[Test.IE8Install.Section] AndOp=Test.IE8Installed.Section SingleOp=Test.IE8SetupRunning.Section Display_String="%InvalidIEVersion%"
--- snip ---
Wine's 'iexplore.exe' placeholder is moved out of the way as part of IE8 recipe.
https://github.com/Winetricks/winetricks/blob/master/src/winetricks#L10970
https://github.com/Winetricks/winetricks/commit/50cfa5c6d6ecb56017ba229c4a30...
--- snip --- ... # Remove the fake DLLs from the existing WINEPREFIX if [ -f "$W_PROGRAMS_X86_UNIX/Internet Explorer/iexplore.exe" ] then mv "$W_PROGRAMS_X86_UNIX/Internet Explorer/iexplore.exe" "$W_PROGRAMS_X86_UNIX/Internet Explorer/iexplore.exe.bak" fi ... --- snip --
Executing winetricks IE6/7/8 recipes in clean "Windows 7" prefix (now default) is pointless. The installer detects the newer Windows version and skips the whole installation sequence (not returning an error). You need to use/set WinVer to "Windows XP" before running these installers.
@Nikolay
--- quote --- sometimes it hangs at the end with update.exe still around, but I remember it happened before. But I don't get "Installation failed" message. --- quote ---
Not related to the problem report here, but there are two known types of hangs with MS installers:
1) installer hangs or crashes on start -> bug 35041 (race/live-lock in libX11, upstream)
live-lock:
--- snip --- ... 00000032 (D) c:\a886642685ca7f332c\update\update.exe 00000035 1 00000034 0 00000033 0 <== ... Wine-dbg>bt 0x34 Backtrace: =>0 0x7dc7c947 in libx11.so.6 (+0x4d947) (0x7c477d70) 1 0x7dc7ce18 _XlcOpenConverter+0x117() in libx11.so.6 (0x7ce0e7b8) 2 0x7dc83f34 _Xlcmbstoutf8+0x53() in libx11.so.6 (0x7ce2bfe9) 3 0x7dc84034 _Xmbstoutf8+0x33() in libx11.so.6 (0x7d112008) 4 0x7dc9a5b8 in libx11.so.6 (+0x6b5b7) (0x7d112008) 5 0x7dc9880c _XimLocalOpenIM+0x41b() in libx11.so.6 (0x7ce0e198) 6 0x7dc96bbd _XimOpenIM+0xfc() in libx11.so.6 (0x7ce0e198) 7 0x7dc7a588 XOpenIM+0x47() in libx11.so.6 (0x009be2f8) 8 0x7de18c01 open_xim+0x2a(display=0x7ce03650) [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/xim.c:343] in winex11 (0x009be2f8) 9 0x7de192a9 X11DRV_SetupXIM+0x18() [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/xim.c:448] in winex11 (0x009be328) 10 0x7de15cc9 x11drv_init_thread_data+0x1b4() [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/x11drv_main.c:669] in winex11 (0x009be358) 11 0x7de0a22d thread_init_display+0xa() [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/x11drv.h:362] in winex11 (0x009be368) ...
Wine-dbg>bt 0x35 Backtrace: =>0 0x7dc7c947 in libx11.so.6 (+0x4d947) (0x7c477d70) 1 0x7dc7ce18 _XlcOpenConverter+0x117() in libx11.so.6 (0x7d00e438) 2 0x7dc83f34 _Xlcmbstoutf8+0x53() in libx11.so.6 (0x7d02b884) 3 0x7dc84034 _Xmbstoutf8+0x33() in libx11.so.6 (0x7cf76008) 4 0x7dc9a5b8 in libx11.so.6 (+0x6b5b7) (0x7cf76008) 5 0x7dc9880c _XimLocalOpenIM+0x41b() in libx11.so.6 (0x7d00de18) 6 0x7dc96bbd _XimOpenIM+0xfc() in libx11.so.6 (0x7d00de18) 7 0x7dc7a588 XOpenIM+0x47() in libx11.so.6 (0x00abdc88) 8 0x7de18c01 open_xim+0x2a(display=0x7d003648) [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/xim.c:343] in winex11 (0x00abdc88) 9 0x7de192a9 X11DRV_SetupXIM+0x18() [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/xim.c:448] in winex11 (0x00abdcb8) 10 0x7de15cc9 x11drv_init_thread_data+0x1b4() [/home/focht/projects/wine/wine.repo/src/dlls/winex11.drv/x11drv_main.c:669] in winex11 (0x00abdce8) ...
--- snip ---
Alternatively, crash:
--- snip --- ... *** Error in `c:\2c1b4d69d84a8cac34227a544c\update\update.exe': double free or corruption (!prev): 0x7c582260 *** ======= Backtrace: ========= /lib/libc.so.6(+0x4489e393)[0xf7458393] /lib/libc.so.6(+0x448a6e0a)[0xf7460e0a] /lib/libc.so.6(cfree+0x50)[0xf74644b0] /lib/libX11.so.6(_XlcDestroyLocaleDataBase+0x94)[0x7dc7b5e4] /lib/libX11.so.6(+0x44e9b451)[0x7dc80451] /lib/libX11.so.6(_XCloseLC+0x78)[0x7dc882d8] /lib/libX11.so.6(_XlcCurrentLC+0x31)[0x7dc88321] /lib/libX11.so.6(_Xlcmbstoutf8+0xfd)[0x7dc80fdd] /lib/libX11.so.6(_Xmbstoutf8+0x34)[0x7dc81034] /lib/libX11.so.6(+0x44eb25b8)[0x7dc975b8] /lib/libX11.so.6(_XimLocalOpenIM+0x41c)[0x7dc9580c] /lib/libX11.so.6(_XimOpenIM+0xfd)[0x7dc93bbd] /lib/libX11.so.6(XOpenIM+0x48)[0x7dc77588] /home/focht/projects/wine/wine.repo/install/bin/../lib/wine/winex11.drv.so(+0x6bc01)[0x7de15c01] /home/focht/projects/wine/wine.repo/install/bin/../lib/wine/winex11.drv.so(+0x6c2a9)[0x7de162a9] /home/focht/projects/wine/wine.repo/install/bin/../lib/wine/winex11.drv.so(+0x68cc9)[0x7de12cc9] /home/focht/projects/wine/wine.repo/install/bin/../lib/wine/winex11.drv.so(+0x5d22d)[0x7de0722d] /home/focht/projects/wine/wine.repo/install/bin/../lib/wine/winex11.drv.so(+0x617ce)[0x7de0b7ce] /home/focht/projects/wine/wine.repo/install/bin/../lib/wine/winex11.drv.so(X11DRV_WindowPosChanging+0x51)[0x7de0c4ed] ... --- snip ---
2) installer hangs on end -> bug 16876 (property sheet control)
Regards
https://bugs.winehq.org/show_bug.cgi?id=42641
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com --- Right, running without -q in Windows 7 prefix shows error message box, I set it back to XP when I was testing.
https://bugs.winehq.org/show_bug.cgi?id=42641
--- Comment #7 from Austin English austinenglish@gmail.com --- (In reply to Nikolay Sivov from comment #6)
Right, running without -q in Windows 7 prefix shows error message box, I set it back to XP when I was testing.
The logs were gathered with wine-1.7.52-19-g6f7dfe2cea, so windows 7 wouldn't be a concern. That said, I should update the verb to force winxp, good point.
https://bugs.winehq.org/show_bug.cgi?id=42641
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |d774442e8d65dc8ef1ad3d9a677 | |fd0da623ff174 Status|NEW |RESOLVED Resolution|--- |FIXED
--- Comment #8 from Austin English austinenglish@gmail.com --- (In reply to Austin English from comment #7)
(In reply to Nikolay Sivov from comment #6)
Right, running without -q in Windows 7 prefix shows error message box, I set it back to XP when I was testing.
The logs were gathered with wine-1.7.52-19-g6f7dfe2cea, so windows 7 wouldn't be a concern. That said, I should update the verb to force winxp, good point.
I've updated winetricks to use winxp: https://github.com/Winetricks/winetricks/commit/96c0b0366e56f7b01558f9736552...
With that (and old wine), the bug was still present. With 2.x, it's gone. I reverse bisected, the gdi32 issue was fixed by: commit d774442e8d65dc8ef1ad3d9a677fd0da623ff174 Author: Dmitry Timoshkov dmitry@baikal.ru Date: Tue Oct 20 12:25:54 2015 +0800
gdi32: Fix heap corruption.
Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
:040000 040000 7e87e8b743ac4da6d3cbfd4c5e482731aa743622 b9186949caba7cf6516d45fc46b4157b4a16c9eb M dlls
https://bugs.winehq.org/show_bug.cgi?id=42641
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #9 from Alexandre Julliard julliard@winehq.org --- Closing bugs fixed in 2.4.