Hallo Martin.
This patch is giving me trouble:
>Author: Martin Fuchs <martin-fuchs(a)gmx.net>
>Date: Sat Feb 11 12:16:56 2006 +0100
>
>shell32: SHELL32_GetItemAttributes()
>- correct documentation which incorrectly claimed not to set any
> attribute bits
>- retrieve file attributes using SHGetPathFromIDListW() when they are
> not already present in the internal PIDL structures
>- add test case to show the previously wrong folder attributes when
> using absolute PIDLs
>- fix some memory leaks in the tests
in a couple of wine configurations that I use this leads to an infinite
lop when the openfile dialog is called. The call sequence is
SHELL32_GetItemAttributes->SHGetPathFromIDListW->ISF_Desktop_fnGetAttributesOf->SHELL32_GetItemAttributes
which repeats until the stack overflows.
Here is a part of a back trace:
| 13 0x7b8533ed SHELL32_GetItemAttributes+0x2dd(psf=0x7bc6bc28, pidl=0x7bc5e058, pdwAttributes=0x7ba5ae54) [/usr/home/projects/wine/mywine/dlls/shell32/shlfolder.c:430] in shell32 (0x7b8533ed)
| 14 0x7b83fcb8 ISF_Desktop_fnGetAttributesOf+0x148(iface=0x7bc6bc28, cidl=0x1, apidl=0x7ba5ae5c, rgfInOut=0x7ba5ae54) [/usr/home/projects/wine/mywine/dlls/shell32/shfldr_desktop.c:459] in shell32 (0x7b83fcb8)
| 15 0x7b8288cd SHGetPathFromIDListW+0x7d(pidl=0x7bc5e058, pszPath=0x7ba5b0c0) [/usr/home/projects/wine/mywine/dlls/shell32/pidl.c:1273] in shell32 (0x7b8288cd)
| 16 0x7b8533ed SHELL32_GetItemAttributes+0x2dd(psf=0x7bc6bbb8, pidl=0x7bc5e058, pdwAttributes=0x7ba5b334) [/usr/home/projects/wine/mywine/dlls/shell32/shlfolder.c:430] in shell32 (0x7b8533ed)
| 17 0x7b83fcb8 ISF_Desktop_fnGetAttributesOf+0x148(iface=0x7bc6bbb8, cidl=0x1, apidl=0x7ba5b33c, rgfInOut=0x7ba5b334) [/usr/home/projects/wine/mywine/dlls/shell32/shfldr_desktop.c:459] in shell32 (0x7b83fcb8)
| 18 0x7b8288cd SHGetPathFromIDListW+0x7d(pidl=0x7bc5e058, pszPath=0x7ba5b5a0) [/usr/home/projects/wine/mywine/dlls/shell32/pidl.c:1273] in shell32 (0x7b8288cd)
| 19 0x7b8533ed SHELL32_GetItemAttributes+0x2dd(psf=0x7bc6dd70, pidl=0x7bc5e058, pdwAttributes=0x7ba5b814) [/usr/home/projects/wine/mywine/dlls/shell32/shlfolder.c:430] in shell32 (0x7b8533ed)
A +relay,+shell log of one loop is attached below.
Running wineprefixcreate or reinstalling wine.inf does not help. On a
clean new installation there is no problem (but I like to keep using the
old stuff with a hundred or so of installed windows programs).
Any idea?
Rein.