http://bugs.winehq.org/show_bug.cgi?id=27034
Summary: MSI crash on amd64 in file picker Product: Wine Version: 1.3.19 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: msi AssignedTo: wine-bugs@winehq.org ReportedBy: adys.wh@gmail.com
Created an attachment (id=34472) --> (http://bugs.winehq.org/attachment.cgi?id=34472) backtrace
So not to pollute bug 27033
1. Download http://www.usb-over-network.com/usb-over-network-client.msi 2. msiexec /i on a WoW64 prefix 3. Accept TOS 4. On next screen, click "Browse" 5. Click "OK". It doesn't seem to matter which folder it's looking in.
Backtrace: =>0 0x7eda222a msi_dialog_handle_event+0x35a(dialog=0x1803e8, control="Tree", attribute="Property", rec=0x179a30) [/home/adys/src/wine/build/dlls/msi/../../../dlls/msi/dialog.c:645] in msi (0x0033e768) 1 0x7eda46e4 ControlEvent_FireSubscribedEvent+0x73(package=0x136f10, event="SelectionPath", rec=0x179a30) [/home/adys/src/wine/build/dlls/msi/../../../dlls/msi/events.c:277] in msi (0x0033e7a8) 2 0x7eda47b2 ControlEvent_SetTargetPath+0x71(package=0x136f10, argument="", dialog=0x178bd0) [/home/adys/src/wine/build/dlls/msi/../../../dlls/msi/events.c:224] in msi (0x0033e7e8) 3 0x7eda43d6 ControlEvent_HandleControlEvent+0x195(package=0x136f10, event="SetTargetPath", argument="", dialog=0x178bd0) [/home/adys/src/wine/build/dlls/msi/../../../dlls/msi/events.c:434] in msi (0x0033e838)
Full backtrace attached
http://bugs.winehq.org/show_bug.cgi?id=27034
Jerome Leclanche adys.wh@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |Installer, win64 URL| |http://www.usb-over-network | |.com/usb-over-network-clien | |t.msi
http://bugs.winehq.org/show_bug.cgi?id=27034
fracting fracting@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fracting@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=27034
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
http://bugs.winehq.org/show_bug.cgi?id=27034
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords|win64 | Status|UNCONFIRMED |NEW CC| |focht@gmx.net Summary|MSI crash on amd64 in file |USB-over-Network installer |picker |crashes on destination | |folder selection | |(_BrowseProperty not | |handled) Ever Confirmed|0 |1
--- Comment #1 from Anastasius Focht focht@gmx.net 2011-07-23 04:11:32 CDT --- Hello,
confirming, also happens on 32bit Linux.
Reminds me of bug 10211 (SelectionPath) but this one is different because a required property is missing.
--- snip --- 0023:trace:msi:msi_get_property property L"_BrowseProperty" not found 0023:Call ntdll.RtlAllocateHeap(00110000,00000000,00000020) ret=682ff9d6 0023:Ret ntdll.RtlAllocateHeap() retval=001bf3a8 ret=682ff9d6 0023:Call user32.SetWindowTextW(00010098,001bf3a8 L"_BrowseProperty") ret=68304f99 0023:Call window proc 0x683051c1 (hwnd=0x10098,msg=WM_SETTEXT,wp=00000000,lp=001bf3a8) 0023:Call user32.GetPropW(00010098,6836f45c L"MSIDATA") ret=683051e8 0023:Ret user32.GetPropW() retval=001bf0c8 ret=683051e8 ... 0023:err:msi:msi_dialog_onkillfocus Invalid path L"_BrowseProperty" ... 0023:trace:msi:msi_dialog_onkillfocus edit L"PathEdit" contents changed, set L"_BrowseProperty" ... 0023:trace:msi:msi_dialog_send_event Sending control event L"SetTargetPath" L"[_BrowseProperty]" ... 0023:trace:msi:ControlEvent_HandleControlEvent handling control event L"SetTargetPath" 0023:trace:msi:msi_get_property property L"" not found 0023:Call ntdll.RtlAllocateHeap(00110000,00000008,00000024) ret=68313436 0023:Ret ntdll.RtlAllocateHeap() retval=001c0be0 ret=68313436 0023:trace:msi:ControlEvent_FireSubscribedEvent Firing event L"SelectionPath" 0023:Call user32.GetPropW(00040028,6836f45c L"MSIDATA") ret=68300daa 0023:Ret user32.GetPropW() retval=0019e7f0 ret=68300daa 0023:Call user32.SendMessageW(00040028,0000113e,00000000,0033e698) ret=68300d73 0023:Call window proc 0x68305f03 (hwnd=0x40028,msg=TVM_GETITEMW,wp=00000000,lp=0033e698) 0023:trace:msi:MSISelectionTree_WndProc 0x40028 113e 00000000 0033e698 0023:Call user32.GetPropW(00040028,6836f45c L"MSIDATA") ret=68305f8f 0023:Ret user32.GetPropW() retval=0019e7f0 ret=68305f8f 0023:Call user32.CallWindowProcW(705367e2,00040028,0000113e,00000000,0033e698) ret=68306039 0023:Call window proc 0x705367e2 (hwnd=0x40028,msg=TVM_GETITEMW,wp=00000000,lp=0033e698) 0023:Call user32.GetWindowLongW(00040028,00000000) ret=7052a8f9 0023:Ret user32.GetWindowLongW() retval=001af408 ret=7052a8f9 0023:trace:treeview:TREEVIEW_WindowProc hwnd 0x40028 msg 113e wp=00000000 lp=0033e698 0023:trace:treeview:TREEVIEW_ValidItem invalid item (nil) 0023:Ret window proc 0x705367e2 (hwnd=0x40028,msg=TVM_GETITEMW,wp=00000000,lp=0033e698) retval=00000000 0023:Ret user32.CallWindowProcW() retval=00000000 ret=68306039 0023:Ret window proc 0x68305f03 (hwnd=0x40028,msg=TVM_GETITEMW,wp=00000000,lp=0033e698) retval=00000000 0023:Ret user32.SendMessageW() retval=00000000 ret=68300d73 0023:trace:seh:raise_exception code=c0000005 flags=0 addr=0x68301234 ip=68301234 tid=0023 ... Unhandled exception: page fault on read access to 0x00000020 in 32-bit code ... Backtrace: =>0 0x68301234 msi_dialog_handle_event+0x467(dialog=0x19dd70, control="Tree", attribute="Property", rec=0x1c0be0) [/opt/projects/wine/wine-git/dlls/msi/dialog.c:691] in msi (0x0033e788) 1 0x6830b937 ControlEvent_FireSubscribedEvent+0xba(package=0x15eef0, event="SelectionPath", rec=0x1c0be0) [/opt/projects/wine/wine-git/dlls/msi/events.c:286] in msi (0x0033e7c8) 2 0x6830b619 ControlEvent_SetTargetPath+0x6e(package=0x15eef0, argument="", dialog=0x1bc958) [/opt/projects/wine/wine-git/dlls/msi/events.c:225] in msi (0x0033e7f8) 3 0x6830be18 ControlEvent_HandleControlEvent+0xc0(package=0x15eef0, event="SetTargetPath", argument="", dialog=0x1bc958) [/opt/projects/wine/wine-git/dlls/msi/events.c:457] in msi (0x0033e848) --- snip ---
Dumping the extracted client msi "Control" table with Orca:
--- snip --- EasyCustomizeDlgFT Box GroupBox 10 140 351 40 3 Destination folder EasyCustomizeDlgFT Location Text 22 157 250 18 3 CustomizeDlgLocation-CustomizeDlgLocation ... EasyCustomizeDlgFT Tree SelectionTree 1 1 1 1 3 _BrowseProperty Tree of selections ... BrowseDlg PathEdit PathEdit 25 202 320 18 11 _BrowseProperty OK ... BrowseDlg DirectoryCombo DirectoryCombo 70 55 220 80 393227 _BrowseProperty WixUI_Bmp_Up BrowseDlg DirectoryList DirectoryList 25 83 320 98 15 _BrowseProperty PathLabel --- snip ---
"ControlEvent" table:
--- snip --- BrowseDlg OK SetTargetPath [_BrowseProperty] 1 1 --- snip ---
That "_BrowseProperty" is used as an indirect property, it should contain the name of another property or directory. No installer custom action explicitly sets this property. There is an "INSTALLLOCATION" property which seems to act equal to "INSTALLDIR".
--- snip --- 0023:trace:msi:msi_set_property 0x1466a8 L"INSTALLLOCATION" L"C:\Program Files\USB over Network (Client)\" ... 0023:trace:msi:ACTION_CustomAction Handling custom action L"set_PRIMARYFOLDER" (33 L"PRIMARYFOLDER" L"INSTALLLOCATION") ... 0023:trace:msi:msi_set_property 0x1466a8 L"PRIMARYFOLDER" L"INSTALLLOCATION" --- snip ---
Googling a bit for "_BrowseProperty" and "INSTALLLOCATION" seems to dig up many msi logs where _BrowseProperty = INSTALLLOCATION.
$ sha1sum usb-over-network-client.msi a580cee5660348a80892ed008954345dddb4e3cb usb-over-network-client.msi
$ wine --version wine-1.3.25-1-gdf65f3e
Regards
http://bugs.winehq.org/show_bug.cgi?id=27034
--- Comment #2 from Jerome Leclanche adys.wh@gmail.com 2011-07-23 07:16:29 CDT --- Aha; knew i saw this in bug 22398.
http://bugs.winehq.org/show_bug.cgi?id=27034
Francisco Pina Martins f.pinamartins@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |f.pinamartins@gmail.com
--- Comment #3 from Francisco Pina Martins f.pinamartins@gmail.com 2011-11-07 05:50:45 CST --- BioEdit (http://appdb.winehq.org/objectManager.php?sClass=version&iId=8726) also seems affected by this bug.
http://bugs.winehq.org/show_bug.cgi?id=27034
--- Comment #4 from Austin English austinenglish@gmail.com 2013-01-30 15:42:26 CST --- http://source.winehq.org/git/wine.git/commitdiff/166a7e993cb0033fac7ec2712c3... looks related, but it still fails for me.
http://bugs.winehq.org/show_bug.cgi?id=27034
--- Comment #5 from Bruno Jesus 00cpxxx@gmail.com 2013-02-25 10:15:30 CST --- Created attachment 43711 --> http://bugs.winehq.org/attachment.cgi?id=43711 wine 1.5.24 output
BioEdit installs correctly now, a new test for this bug main app (usb-over-network-client.msi) shows that the output is different, the app quits before showing anything in the screen, this is the last line:
err:msi:ITERATE_Actions Execution halted, action L"DelFileMSI_32" returned 1603
http://bugs.winehq.org/show_bug.cgi?id=27034
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com 2013-02-25 11:20:19 CST --- This is likely to be a problem:
--- fixme:wshom:WshShell3_Run ({VT_I4: 0} {VT_BOOL: 0} 0x4bd7d0): stub ---
from what I can see it should be just a wrapper for ShellExecutEx(), I'll take a look.
http://bugs.winehq.org/show_bug.cgi?id=27034
--- Comment #7 from Nikolay Sivov bunglehead@gmail.com 2013-02-25 12:29:29 CST --- Created attachment 43713 --> http://bugs.winehq.org/attachment.cgi?id=43713 patch
With this patch we attempt to do async run and report success to application, but this action still fails:
--- 0023:trace:wshom:WshShell3_Invoke (1000 {00000000-0000-0000-0000-000000000000} 0 1 0x4be358 (nil) 0x1506c8 0x4be378) 0023:trace:wshom:WshShell3_Run (L"cmd.exe /C del C:\users\nsivov\Temp\32usb-c.msi" {VT_I4: 0} {VT_BOOL: 0} 0x4bdf60) 0023:trace:wshom:WshShell3_Release () 0023:trace:wshom:WshShell3_Release () 0009:err:msi:ITERATE_Actions Execution halted, action L"DelFileMSI_32" returned 1603 ---
So a problem is deeper or I'm missing something.
http://bugs.winehq.org/show_bug.cgi?id=27034
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #43713|0 |1 is obsolete| |
--- Comment #8 from Austin English austinenglish@gmail.com 2013-02-26 14:06:26 CST --- Comment on attachment 43713 --> http://bugs.winehq.org/attachment.cgi?id=43713 patch
http://source.winehq.org/git/wine.git/commitdiff/5db4741d0b074ca0080adf36c3f...
http://bugs.winehq.org/show_bug.cgi?id=27034
Jerome Leclanche adys.wh@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |5db4741d0b074ca0080adf36c3f | |db440bf92f8d8 Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #9 from Jerome Leclanche adys.wh@gmail.com 2013-08-27 23:56:09 CDT --- No longer crashes. More stuff needs to be implemented in Browse though but those are separate issues.
http://bugs.winehq.org/show_bug.cgi?id=27034
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #10 from Alexandre Julliard julliard@winehq.org 2013-08-30 13:05:35 CDT --- Closing bugs fixed in 1.7.1.