Problems unveiled by the last version.c patch

pvriens at xs4all.nl pvriens at xs4all.nl
Thu Dec 16 15:31:13 CST 2004


Hi,

just started with a fresh wine install from CVS. I've tried to install
vc6redistsetup_enu.exe and was not able to select a directory via the
browse dialog.

Some regression testing and debugging showed:

before patch http://cvs.winehq.org/patch.py?id=14894 :

trace:shell:BrsFolderDlgProc hwnd=0x1002e msg=0082 0x00000000 0x00000000
trace:shell:SHGetPathFromIDListAW (pidl=0x63f4f5b8,0x100b720)
trace:ver:RtlGetVersion <-- Windows 98 (L" A ")
trace:shell:SHGetPathFromIDListA (pidl=0x63f4f5b8,0x100b720)
-------- pidl=0x63f4f5b8
[0x63f4f5b8] size=0020 type=1f attr=0x00000000
name="{20d04fe0-3aea-1069-a2d8-08002b30309d}" ((null),(null))
[0x63f4f5cc] size=0025 type=23 attr=0x00000000 name="F:\" ("F:\\",(null))
[0x63f4f5e5] size=0020 type=31 attr=0x00000010 name="temp" ("temp","")
trace:pidl:_ILIsValue (0x63f4f5b8)
trace:pidl:_ILIsFolder (0x63f4f5b8)
trace:pidl:_ILGetGUIDPointer 0x63f4f5b8
trace:pidl:_ILGetGUIDPointer pdata->type 0x001f
trace:pidl:_ILIsMyComputer (0x63f4f5b8)
trace:pidl:ILGetNext 0x63f4f5b8
trace:pidl:ILGetNext -- 0x63f4f5cc
trace:pidl:_ILIsSpecialFolder (0x63f4f5cc)
trace:pidl:ILGetNext 0x63f4f5cc
trace:pidl:ILGetNext -- 0x63f4f5e5
trace:shell:PathAddBackslashA ("F:\\")
trace:pidl:_ILIsSpecialFolder (0x63f4f5e5)
trace:pidl:ILGetNext 0x63f4f5e5
trace:pidl:ILGetNext -- 0x63f4f5f9
trace:shell:SHELL_GetPathFromIDListA -- F:\temp, 0x00000000

after the patch :

trace:shell:BrsFolderDlgProc hwnd=0x1002e msg=0082 0x00000000 0x00000000
trace:shell:SHGetPathFromIDListAW (pidl=0x77e2dbe8,0x100b720)
trace:ver:RtlGetVersion <-- Windows 2000 (L"Service Pack 4")
trace:shell:SHGetPathFromIDListW (pidl=0x77e2dbe8,0x3f0472b4)
-------- pidl=0x77e2dbe8
[0x77e2dbe8] size=0020 type=1f attr=0x00000000
name="{20d04fe0-3aea-1069-a2d8-08002b30309d}" ((null),(null))
[0x77e2dbfc] size=0025 type=23 attr=0x00000000 name="F:\" ("F:\\",(null))
[0x77e2dc15] size=0020 type=31 attr=0x00000010 name="temp" ("temp","")
trace:pidl:_ILIsValue (0x77e2dbe8)
trace:pidl:_ILIsFolder (0x77e2dbe8)
trace:pidl:_ILGetGUIDPointer 0x77e2dbe8
trace:pidl:_ILGetGUIDPointer pdata->type 0x001f
trace:pidl:_ILIsMyComputer (0x77e2dbe8)
trace:pidl:ILGetNext 0x77e2dbe8
trace:pidl:ILGetNext -- 0x77e2dbfc
trace:pidl:_ILIsSpecialFolder (0x77e2dbfc)
trace:pidl:ILGetNext 0x77e2dbfc
trace:pidl:ILGetNext -- 0x77e2dc15
trace:shell:PathAddBackslashW (L"F:\\")
trace:pidl:_ILIsSpecialFolder (0x77e2dc15)
trace:pidl:ILGetNext 0x77e2dc15
trace:pidl:ILGetNext -- 0x77e2dc29
trace:shell:SHELL_GetPathFromIDListW -- L"F:\\temp", 0x00000000
trace:shell:SHGetPathFromIDListW -- L"F:\\temp", 0x00000000

The main difference (apart from the A/W) is that SHGetPathFromIDListW
returns an extra backslash compared to the A-counterpart.

Any idea where to look next ?

Cheers,

Paul.





More information about the wine-devel mailing list