http://bugs.winehq.org/show_bug.cgi?id=2244
Summary: Problems with trees selection of long paths Product: Wine Version: CVS Platform: PC URL: http://daedalus.boob.co.uk/ OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-files AssignedTo: wine-bugs@winehq.org ReportedBy: hatky@users.sf.net
Deadalus is a FREE n64 emulator that I have seen this problem with: when you start the program it opens a tree that asks you ro chose a rom dir create in your home a long dir (40-50 char dirs have been tested) like mkdir ~\1234567890123456789012345678901234567890 then run wine daedalus and chose that dir: f:\1234567890123456789012345678901234567890
p.s. if you have not crashed due to shorter dir select view->directory to repeat the test p.s.s as long dirs crash so do long paths with several directories in them
you will get a crash like this: Unhandled exception: page fault on read access to 0x00390040 in 32-bit code (0x40d32f71). In 32-bit mode. 0x40d32f71 (.L107+0x16 [brsfolder.c] in SHELL32.DLL): call *0x8(%edx) Unable to open file brsfolder.c Wine-dbg>bt Backtrace: =>0 0x40d32f71 (.L107+0x16 [brsfolder.c] in SHELL32.DLL) (ebp=406be0a0) 1 0x40d33458 (BrsFolderDlgProc+0x458(hWnd=0x20026, msg=0x4e, wParam=0x3741, lParam=0x406be330) [brsfolder.c:388] in SHELL32.DLL) (ebp=406be0c0) 2 0x407f4c87 (WINPROC_wrapper+0x17 in USER32.DLL) (ebp=406be0e4) 3 0x407f4ce4 (WINPROC_CallWndProc+0x54(proc=0x40d33000, hwnd=0x20026, msg=0x4e, wParam=0x3741, lParam=0x406be330) [winproc.c:229] in USER32.DLL) (ebp=406be118) 4 0x407fac94 (CallWindowProcW+0x94(func=0x4088c54c, hwnd=0x20026, msg=0x4e, wParam=0x3741, lParam=0x406be330) [winproc.c:3144] in USER32.DLL) (ebp=406be14c) 5 0x407cf700 (DefDlgProcW+0x60(hwnd=0x20026, msg=0x4e, wParam=0x3741, lParam=0x406be330) [defdlg.c:458] in USER32.DLL) (ebp=406be17c) 6 0x407f4c87 (WINPROC_wrapper+0x17 in USER32.DLL) (ebp=406be1a0) 7 0x407f4ce4 (WINPROC_CallWndProc+0x54(proc=0x407cf6a0, hwnd=0x20026, msg=0x4e, wParam=0x3741, lParam=0x406be330) [winproc.c:229] in USER32.DLL) (ebp=406be1d4) 8 0x407fac94 (CallWindowProcW+0x94(func=0x407cf6a0, hwnd=0x20026, msg=0x4e, wParam=0x3741, lParam=0x406be330) [winproc.c:3144] in USER32.DLL) (ebp=406be208) 9 0x4080c050 (call_window_proc+0xb0(hwnd=0x20026, msg=0x4e, wparam=0x3741, lparam=0x406be330, unicode=0x1, same_thread=0x1) [message.c:1456] in USER32.DLL) (ebp=406be264) 10 0x4080cede (SendMessageTimeoutW+0x13e(hwnd=0x20026, msg=0x4e, wparam=0x3741, lparam=0x406be330, flags=0x0, timeout=0xffffffff, res_ptr=0x406be2ec) [message.c:1920] in USER32.DLL) (ebp=406be2c8) 11 0x4080d0f5 (SendMessageW+0x35(hwnd=0x20026, msg=0x4e, wparam=0x3741, lparam=0x406be330) [message.c:2001] in USER32.DLL) (ebp=406be2f4) 12 0x4073a083 (TREEVIEW_SendRealNotify+0x33(infoPtr=0x403ae678, wParam=0x3741, lParam=0x406be330) [treeview.c:451] in COMCTL32.DLL) (ebp=406be318) 13 0x4073a2d3 (TREEVIEW_SendTreeviewNotify+0xb3(infoPtr=0x403ae678, code=0xfffffe36, action=0x0, mask=0x14, oldItem=0x403b2418, newItem=0x0) [treeview.c:532] in COMCTL32.DLL) (ebp=406be3ac) 14 0x4073b895 (TREEVIEW_RemoveItem+0x35(infoPtr=0x403ae678, wineItem=0x403b2418) [treeview.c:1417] in COMCTL32.DLL) (ebp=406be3d8) 15 0x4073b70a (TREEVIEW_RemoveAllChildren+0x2a(infoPtr=0x403ae678, parentItem=0x403b2198) [treeview.c:1376] in COMCTL32.DLL) (ebp=406be3f4) 16 0x4073b937 (TREEVIEW_RemoveItem+0xd7(infoPtr=0x403ae678, wineItem=0x403b2198) [treeview.c:1418] in COMCTL32.DLL) (ebp=406be410) 17 0x4073b70a (TREEVIEW_RemoveAllChildren+0x2a(infoPtr=0x403ae678, parentItem=0x403b1cd0) [treeview.c:1376] in COMCTL32.DLL) (ebp=406be42c) 18 0x4073b937 (TREEVIEW_RemoveItem+0xd7(infoPtr=0x403ae678, wineItem=0x403b1cd0) [treeview.c:1418] in COMCTL32.DLL) (ebp=406be448) 19 0x4073b70a (TREEVIEW_RemoveAllChildren+0x2a(infoPtr=0x403ae678, parentItem=0x403aebf0) [treeview.c:1376] in COMCTL32.DLL) (ebp=406be464) 20 0x4073b99e (TREEVIEW_RemoveTree+0x1e(infoPtr=0x403ae678) [treeview.c:1437] in COMCTL32.DLL) (ebp=406be47c) 21 0x40740b95 (TREEVIEW_Destroy+0x25(infoPtr=0x403ae678) [treeview.c:4787] in COMCTL32.DLL) (ebp=406be490) 22 0x40741c6d (TREEVIEW_WindowProc+0x9ed(hwnd=0x1002b, uMsg=0x2, wParam=0x0, lParam=0x0) [treeview.c:5250] in COMCTL32.DLL) (ebp=406be4ac) 23 0x407f4c87 (WINPROC_wrapper+0x17 in USER32.DLL) (ebp=406be4d0) 24 0x407f4ce4 (WINPROC_CallWndProc+0x54(proc=0x40741280, hwnd=0x1002b, msg=0x2, wParam=0x0, lParam=0x0) [winproc.c:229] in USER32.DLL) (ebp=406be504) 25 0x407fab95 (CallWindowProcA+0xb5(func=0x40741280, hwnd=0x1002b, msg=0x2, wParam=0x0, lParam=0x0) [winproc.c:3101] in USER32.DLL) (ebp=406be538) 26 0x4080c0bf (call_window_proc+0x11f(hwnd=0x1002b, msg=0x2, wparam=0x0, lparam=0x0, unicode=0x0, same_thread=0x1) [message.c:1461] in USER32.DLL) (ebp=406be594) 27 0x4080d0b4 (SendMessageTimeoutA+0x1c4(hwnd=0x1002b, msg=0x2, wparam=0x0, lparam=0x0, flags=0x0, timeout=0xffffffff, res_ptr=0x406be624) [message.c:1968] in USER32.DLL) (ebp=406be600) 28 0x4080d135 (SendMessageA+0x35(hwnd=0x1002b, msg=0x2, wparam=0x0, lparam=0x0) [message.c:2012] in USER32.DLL) (ebp=406be62c) 29 0x407ef31b (WIN_SendDestroyMsg+0x8b(hwnd=0x1002b) [win.c:1446] in USER32.DLL) (ebp=406be680) 30 0x407ef369 (WIN_SendDestroyMsg+0xd9(hwnd=0x20026) [win.c:1458] in USER32.DLL) (ebp=406be6c8) 31 0x407ef4dc (DestroyWindow+0x10c(hwnd=0x20026) [win.c:1548] in USER32.DLL) (ebp=406be6e8) 32 0x407d2aef (DIALOG_DoDialogBox+0x4f(hwnd=0x20026, owner=0x10021) [dialog.c:797] in USER32.DLL) (ebp=406be728) 33 0x407d2c8c (DialogBoxParamW+0x5c(hInst=0x40d20000, name=0x40d75000, owner=0x10021, dlgProc=0x40d33000, param=0x406be760) [dialog.c:833] in USER32.DLL) (ebp=406be744) 34 0x40d3356a (SHELL32.DLL.SHBrowseForFolder+0xca in SHELL32.DLL) (ebp=406be78c) 35 0x0043b8a4 (Daedalus.exe..text+0x3a8a4 in Daedalus.exe) (ebp=00000001)
if you make a dir that is 20-30 char long you may get this (happens about 50% of the tries):
Backtrace: =>0 0x401d8777 (HEAP_CreateFreeBlock+0x1a7(subheap=0x40360000, ptr=0x403ad2e8, size=0x28) [heap.c:417] in NTDLL.DLL) (ebp=406bf43c) 1 0x401d87ff (HEAP_MakeInUseBlockFree+0x4f(subheap=0x40360000, pArena=0x403ad2e8) [heap.c:468] in NTDLL.DLL) (ebp=406bf468) 2 0x401d9a14 (RtlFreeHeap+0xd4(heap=0x40360000, flags=0x2, ptr=0x403ad2f0) [heap.c:1204] in NTDLL.DLL) (ebp=406bf490) 3 0x40d33665 (SHELL32.DLL.SHBrowseForFolder+0x1c5 in SHELL32.DLL) (ebp=406bf4d0) 4 0x0043cf9b (Daedalus.exe..text+0x3bf9b in Daedalus.exe) (ebp=ffffffff) *** Invalid address 0xffffffff (MSVCP60.DLL..reloc+0x87ee1fff)
direct download at: http://daedalus.boob.co.uk/cgi/load.cgi?files/daedalus_0.07b.zip (286kb)