Author: akhaldi Date: Tue Apr 22 21:18:44 2014 New Revision: 62893
URL: http://svn.reactos.org/svn/reactos?rev=62893&view=rev Log: [HLINK] * Sync with Wine 1.7.17. CORE-8080
Modified: trunk/reactos/dll/win32/hlink/hlink_classes.idl trunk/reactos/dll/win32/hlink/hlink_main.c trunk/reactos/media/doc/README.WINE
Modified: trunk/reactos/dll/win32/hlink/hlink_classes.idl URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/hlink_class... ============================================================================== --- trunk/reactos/dll/win32/hlink/hlink_classes.idl [iso-8859-1] (original) +++ trunk/reactos/dll/win32/hlink/hlink_classes.idl [iso-8859-1] Tue Apr 22 21:18:44 2014 @@ -18,6 +18,8 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA */
+#pragma makedep register + [ threading(apartment), uuid(79eac9d0-baf9-11ce-8c82-00aa004ba90b)
Modified: trunk/reactos/dll/win32/hlink/hlink_main.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/hlink_main.... ============================================================================== --- trunk/reactos/dll/win32/hlink/hlink_main.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/hlink/hlink_main.c [iso-8859-1] Tue Apr 22 21:18:44 2014 @@ -375,6 +375,8 @@ HRESULT WINAPI HlinkParseDisplayName(LPBC pibc, LPCWSTR pwzDisplayName, BOOL fNoForceAbs, ULONG *pcchEaten, IMoniker **ppimk) { + static const WCHAR file_colonW[] = {'f','i','l','e',':'}; + ULONG eaten = 0; HRESULT hres;
TRACE("(%p %s %x %p %p)\n", pibc, debugstr_w(pwzDisplayName), fNoForceAbs, pcchEaten, ppimk); @@ -382,17 +384,27 @@ if(fNoForceAbs) FIXME("Unsupported fNoForceAbs\n");
- hres = MkParseDisplayNameEx(pibc, pwzDisplayName, pcchEaten, ppimk); - if(SUCCEEDED(hres)) - return hres; - - hres = MkParseDisplayName(pibc, pwzDisplayName, pcchEaten, ppimk); - if(SUCCEEDED(hres)) - return hres; + if(!strncmpiW(pwzDisplayName, file_colonW, sizeof(file_colonW)/sizeof(WCHAR))) { + pwzDisplayName += sizeof(file_colonW)/sizeof(WCHAR); + eaten += sizeof(file_colonW)/sizeof(WCHAR); + + while(*pwzDisplayName == '/') { + pwzDisplayName++; + eaten++; + } + }else { + hres = MkParseDisplayNameEx(pibc, pwzDisplayName, pcchEaten, ppimk); + if(SUCCEEDED(hres)) + return hres; + + hres = MkParseDisplayName(pibc, pwzDisplayName, pcchEaten, ppimk); + if(SUCCEEDED(hres)) + return hres; + }
hres = CreateFileMoniker(pwzDisplayName, ppimk); if(SUCCEEDED(hres)) - *pcchEaten = strlenW(pwzDisplayName); + *pcchEaten = eaten + strlenW(pwzDisplayName);
return hres; }
Modified: trunk/reactos/media/doc/README.WINE URL: http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=6... ============================================================================== --- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original) +++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Tue Apr 22 21:18:44 2014 @@ -76,7 +76,7 @@ reactos/dll/win32/fusion # Synced to Wine-1.7.1 reactos/dll/win32/gdiplus # Synced to Wine-1.7.17 reactos/dll/win32/hhctrl.ocx # Synced to Wine-1.7.17 -reactos/dll/win32/hlink # Synced to Wine-1.7.1 +reactos/dll/win32/hlink # Synced to Wine-1.7.17 reactos/dll/win32/hnetcfg # Synced to Wine-1.7.1 reactos/dll/win32/httpapi # Synced to Wine-1.7.1 reactos/dll/win32/iccvid # Synced to Wine-1.7.1