Index: dll/win32/shell32/folders/CDrivesFolder.cpp =================================================================== --- dll/win32/shell32/folders/CDrivesFolder.cpp (revision 71208) +++ dll/win32/shell32/folders/CDrivesFolder.cpp (working copy) @@ -223,8 +223,12 @@ return SH_ParseGuidDisplayName(this, hwndOwner, pbc, lpszDisplayName, pchEaten, ppidl, pdwAttributes); } /* do we have an absolute path name ? */ - else if (PathGetDriveNumberW (lpszDisplayName) >= 0 && - lpszDisplayName[2] == (WCHAR) '\\') + else if ((PathGetDriveNumberW (lpszDisplayName) >= 0 && + lpszDisplayName[2] == (WCHAR) '\\') + || + (PathGetDriveNumberW (lpszDisplayName) >= 0 && + lpszDisplayName[1] == (WCHAR) ':' && + lpszDisplayName[2] == NULL)) { szNext = GetNextElementW (lpszDisplayName, szElement, MAX_PATH); /* make drive letter uppercase to enable PIDL comparison */