Here's an implementation of PathCreateFromUrlW that helps Kazaa crash later rather than sooner. :)
Can someone review this and check it in (if it doesn't require any fixes)?
Index: path.c =================================================================== RCS file: /home/wine/wine/dlls/shlwapi/path.c,v retrieving revision 1.27 diff -r1.27 path.c 3157c3157,3159 < FIXME("(%s,%p,%p,0x%08lx)-stub\n", debugstr_w(lpszUrl), lpszPath, pcchPath, dwFlags); ---
static const WCHAR stemp[] = { 'f','i','l','e',':','/','/',0 }; LPWSTR pwszPathPart; TRACE("(%s,%p,%p,0x%08lx)\n", debugstr_w(lpszUrl), lpszPath,
pcchPath, dwFlags); 3162c3164,3189 < return S_OK; ---
// Path of the form file://... if (!strncmpW(lpszUrl, stemp, 7)) { lpszUrl += 7; } // Path of the form file:... else if (!strncmpW(lpszUrl, stemp, 5)) { lpszUrl += 5; }
// Ensure that path is of the form c:... or c|... if (lpszUrl[1] != ':' && lpszUrl[1] != '|' && isalphaW(*lpszUrl)) return E_INVALIDARG;
HRESULT hr = UrlUnescapeW(lpszUrl, lpszPath, pcchPath, dwFlags); if (lpszPath[1] == '|') lpszPath[1] = ':';
for (pwszPathPart = lpszPath; *pwszPathPart; pwszPathPart++) if (*pwszPathPart == '/') *pwszPathPart = '\';
TRACE("Returning %s\n",debugstr_w(lpszPath));
return hr;
On December 31, 2002 01:46 pm, Matthew Mastracci wrote:
Can someone review this and check it in (if it doesn't require any fixes)?
Please send uniffied diff patches like so:
cvs diff -u dlls/shlwapi/path.c