i had a look at the dialog boxes (and why they no longer work)
it seems the issue comes from a subtle change to PathIsRoot
previous version reads:
if path is like x:\ then ok
current version says
if pathis like x:\ and nothing after the \ then ok
so, ISF_MyComputer_fnParseDisplayName which is used to build
a pidl from an absolute path (like c:\dir1\dir2\), just
returns a NULL pidl (seen as a desktop pidl), and not a pidl to
this dir, hence most of the issues.
the implementation of PathIsRoot is correct (tested against
native shlwapi), so I'd propose the following change
any comment before submission to wine-patches (jurgen ?)
Index: dlls/shell32/shlfolder.c
===================================================================
RCS file: /home/cvs/cvsroot/wine/wine/dlls/shell32/shlfolder.c,v
retrieving revision 1.46
diff -u -r1.46 shlfolder.c
--- dlls/shell32/shlfolder.c 2000/04/28 20:23:46 1.46
+++ dlls/shell32/shlfolder.c 2000/05/11 15:40:17
@@ -2121,7 +2121,8 @@
*ppidl = 0;
if (pchEaten) *pchEaten = 0; /* strange but like the original */
- if (PathIsRootW(lpszDisplayName))
+ if (PathIsRootW(lpszDisplayName)||
+ (lpszDisplayName[1] == (WCHAR)':' && lpszDisplayName[2] ==
+(WCHAR)'\\'))
{
szNext = GetNextElementW(lpszDisplayName, szElement, MAX_PATH);
lstrcpynWtoA(szTempA, szElement, lstrlenW(szElement) + 1);
--
---------------
Eric Pouech (http://perso.wanadoo.fr/eric.pouech/)
"The future will be better tomorrow", Vice President Dan Quayle