[Bug 2244] New: Problems with trees selection of long paths

Wine Bugs wine-bugs at winehq.org
Sat May 22 08:00:52 CDT 2004


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 at winehq.org
        ReportedBy: hatky at 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)

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list