Module: wine Branch: master Commit: 24853242a835675dbf8c349c68fd7c323c1b50f9 URL: http://source.winehq.org/git/wine.git/?a=commit;h=24853242a835675dbf8c349c68...
Author: Jacek Caban jacek@codeweavers.com Date: Tue Jan 29 00:21:19 2008 +0100
hlink: Added HlinkParseDisplayName implementation.
---
dlls/hlink/hlink.spec | 2 +- dlls/hlink/hlink_main.c | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletions(-)
diff --git a/dlls/hlink/hlink.spec b/dlls/hlink/hlink.spec index 7dac4d9..117327b 100644 --- a/dlls/hlink/hlink.spec +++ b/dlls/hlink/hlink.spec @@ -11,7 +11,7 @@ 14 stub HlinkResolveMonikerForData 15 stub HlinkResolveStringForData 16 stub OleSaveToStreamEx -18 stub HlinkParseDisplayName +18 stdcall HlinkParseDisplayName(ptr wstr long ptr ptr) 20 stdcall HlinkQueryCreateFromData(ptr) 21 stub HlinkSetSpecialReference 22 stdcall HlinkGetSpecialReference(long ptr) diff --git a/dlls/hlink/hlink_main.c b/dlls/hlink/hlink_main.c index 4e32189..b9ce4af 100644 --- a/dlls/hlink/hlink_main.c +++ b/dlls/hlink/hlink_main.c @@ -322,6 +322,31 @@ HRESULT WINAPI HlinkUpdateStackItem(IHlinkFrame *pihlframe, IHlinkBrowseContext return E_NOTIMPL; }
+HRESULT WINAPI HlinkParseDisplayName(LPBC pibc, LPCWSTR pwzDisplayName, BOOL fNoForceAbs, + ULONG *pcchEaten, IMoniker **ppimk) +{ + HRESULT hres; + + TRACE("(%p %s %x %p %p)\n", pibc, debugstr_w(pwzDisplayName), fNoForceAbs, pcchEaten, ppimk); + + 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; + + hres = CreateFileMoniker(pwzDisplayName, ppimk); + if(SUCCEEDED(hres)) + *pcchEaten = strlenW(pwzDisplayName); + + return hres; +} + static HRESULT WINAPI HLinkCF_fnQueryInterface ( LPCLASSFACTORY iface, REFIID riid, LPVOID *ppvObj) {