[ros-diffs] [winesync] 32843: Autosyncing with Wine HEAD

winesync at svn.reactos.org winesync at svn.reactos.org
Fri Apr 4 15:13:16 CEST 2008


Author: winesync
Date: Fri Apr  4 08:13:15 2008
New Revision: 32843

URL: http://svn.reactos.org/svn/reactos?rev=32843&view=rev
Log:
Autosyncing with Wine HEAD

Modified:
    trunk/reactos/dll/win32/hlink/extserv.c
    trunk/reactos/dll/win32/hlink/hlink.rbuild
    trunk/reactos/dll/win32/hlink/hlink.spec
    trunk/reactos/dll/win32/hlink/hlink_main.c
    trunk/reactos/dll/win32/hlink/link.c

Modified: trunk/reactos/dll/win32/hlink/extserv.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/extserv.c?rev=32843&r1=32842&r2=32843&view=diff
==============================================================================
--- trunk/reactos/dll/win32/hlink/extserv.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/hlink/extserv.c [iso-8859-1] Fri Apr  4 08:13:15 2008
@@ -63,7 +63,7 @@
     }
 
     if(*ppv) {
-        IUnknown_AddRef(EXTSERVUNK(This));
+        IUnknown_AddRef((IUnknown*)*ppv);
         return S_OK;
     }
 
@@ -209,6 +209,9 @@
     HttpNegotiate_OnResponse
 };
 
+/***********************************************************************
+ *             HlinkCreateExtensionServices (HLINK.@)
+ */
 HRESULT WINAPI HlinkCreateExtensionServices(LPCWSTR pwzAdditionalHeaders,
         HWND phwnd, LPCWSTR pszUsername, LPCWSTR pszPassword,
         IUnknown *punkOuter, REFIID riid, void** ppv)

Modified: trunk/reactos/dll/win32/hlink/hlink.rbuild
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/hlink.rbuild?rev=32843&r1=32842&r2=32843&view=diff
==============================================================================
--- trunk/reactos/dll/win32/hlink/hlink.rbuild [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/hlink/hlink.rbuild [iso-8859-1] Fri Apr  4 08:13:15 2008
@@ -1,5 +1,6 @@
 <?xml version="1.0"?>
 <!DOCTYPE module SYSTEM "../../../tools/rbuild/project.dtd">
+<group>
 <module name="hlink" type="win32dll" baseaddress="${BASEADDRESS_HLINK}" installbase="system32" installname="hlink.dll" allowwarnings="true">
 	<autoregister infsection="OleControlDlls" type="DllRegisterServer" />
 	<importlibrary definition="hlink.spec.def" />
@@ -8,6 +9,11 @@
 	<define name="__WINESRC__" />
 	<define name="WINVER">0x600</define>
 	<define name="_WIN32_WINNT">0x600</define>
+	<file>browse_ctx.c</file>
+	<file>extserv.c</file>
+	<file>hlink_main.c</file>
+	<file>link.c</file>
+	<file>hlink.spec</file>
 	<library>wine</library>
 	<library>shell32</library>
 	<library>ole32</library>
@@ -16,9 +22,5 @@
 	<library>urlmon</library>
 	<library>uuid</library>
 	<library>ntdll</library>
-	<file>browse_ctx.c</file>
-	<file>extserv.c</file>
-	<file>hlink_main.c</file>
-	<file>link.c</file>
-	<file>hlink.spec</file>
 </module>
+</group>

Modified: trunk/reactos/dll/win32/hlink/hlink.spec
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/hlink.spec?rev=32843&r1=32842&r2=32843&view=diff
==============================================================================
--- trunk/reactos/dll/win32/hlink/hlink.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/hlink/hlink.spec [iso-8859-1] Fri Apr  4 08:13:15 2008
@@ -8,10 +8,10 @@
 10 stdcall HlinkNavigate(ptr ptr long ptr ptr ptr)
 11 stdcall HlinkUpdateStackItem(ptr ptr long ptr wstr wstr)
 12 stub HlinkOnRenameDocument
-14 stub HlinkResolveMonikerForData
+14 stdcall HlinkResolveMonikerForData(ptr long ptr long ptr ptr ptr)
 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)

Modified: trunk/reactos/dll/win32/hlink/hlink_main.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/hlink_main.c?rev=32843&r1=32842&r2=32843&view=diff
==============================================================================
--- trunk/reactos/dll/win32/hlink/hlink_main.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/hlink/hlink_main.c [iso-8859-1] Fri Apr  4 08:13:15 2008
@@ -41,8 +41,6 @@
 
     switch (fdwReason)
     {
-    case DLL_WINE_PREATTACH:
-        return FALSE;  /* prefer native version */
     case DLL_PROCESS_ATTACH:
         DisableThreadLibraryCalls(hinstDLL);
         break;
@@ -52,12 +50,18 @@
     return TRUE;
 }
 
+/***********************************************************************
+ *             DllCanUnloadNow (HLINK.@)
+ */
 HRESULT WINAPI DllCanUnloadNow( void )
 {
     FIXME("\n");
     return S_OK;
 }
 
+/***********************************************************************
+ *             HlinkCreateFromMoniker (HLINK.@)
+ */
 HRESULT WINAPI HlinkCreateFromMoniker( IMoniker *pimkTrgt, LPCWSTR pwzLocation,
         LPCWSTR pwzFriendlyName, IHlinkSite* pihlsite, DWORD dwSiteData,
         IUnknown* piunkOuter, REFIID riid, void** ppvObj)
@@ -89,6 +93,9 @@
     return r;
 }
 
+/***********************************************************************
+ *             HlinkCreateFromString (HLINK.@)
+ */
 HRESULT WINAPI HlinkCreateFromString( LPCWSTR pwzTarget, LPCWSTR pwzLocation,
         LPCWSTR pwzFriendlyName, IHlinkSite* pihlsite, DWORD dwSiteData,
         IUnknown* piunkOuter, REFIID riid, void** ppvObj)
@@ -151,6 +158,9 @@
 }
 
 
+/***********************************************************************
+ *             HlinkNavigate (HLINK.@)
+ */
 HRESULT WINAPI HlinkCreateBrowseContext( IUnknown* piunkOuter, REFIID riid, void** ppvObj)
 {
     HRESULT r = S_OK;
@@ -164,6 +174,9 @@
     return r;
 }
 
+/***********************************************************************
+ *             HlinkNavigate (HLINK.@)
+ */
 HRESULT WINAPI HlinkNavigate(IHlink *phl, IHlinkFrame *phlFrame,
         DWORD grfHLNF, LPBC pbc, IBindStatusCallback *pbsc,
         IHlinkBrowseContext *phlbc)
@@ -180,6 +193,9 @@
     return r;
 }
 
+/***********************************************************************
+ *             HlinkOnNavigate (HLINK.@)
+ */
 HRESULT WINAPI HlinkOnNavigate( IHlinkFrame *phlFrame,
         IHlinkBrowseContext* phlbc, DWORD grfHLNF, IMoniker *pmkTarget,
         LPCWSTR pwzLocation, LPCWSTR pwzFriendlyName, ULONG* puHLID)
@@ -199,6 +215,9 @@
     return r;
 }
 
+/***********************************************************************
+ *             HlinkCreateFromData (HLINK.@)
+ */
 HRESULT WINAPI HlinkCreateFromData(IDataObject *piDataObj,
         IHlinkSite *pihlsite, DWORD dwSiteData, IUnknown *piunkOuter,
         REFIID riid, void **ppvObj)
@@ -209,12 +228,18 @@
     return E_NOTIMPL;
 }
 
+/***********************************************************************
+ *             HlinkQueryCreateFromData (HLINK.@)
+ */
 HRESULT WINAPI HlinkQueryCreateFromData(IDataObject* piDataObj)
 {
     FIXME("%p\n", piDataObj);
     return E_NOTIMPL;
 }
 
+/***********************************************************************
+ *             HlinkNavigateToStringReference (HLINK.@)
+ */
 HRESULT WINAPI HlinkNavigateToStringReference( LPCWSTR pwzTarget,
         LPCWSTR pwzLocation, IHlinkSite *pihlsite, DWORD dwSiteData,
         IHlinkFrame *pihlframe, DWORD grfHLNF, LPBC pibc,
@@ -235,6 +260,9 @@
     return r;
 }
 
+/***********************************************************************
+ *             HlinkIsShortcut (HLINK.@)
+ */
 HRESULT WINAPI HlinkIsShortcut(LPCWSTR pwzFileName)
 {
     int len;
@@ -253,6 +281,9 @@
     return strcmpiW(pwzFileName+len, url_ext) ? S_FALSE : S_OK;
 }
 
+/***********************************************************************
+ *             HlinkGetSpecialReference (HLINK.@)
+ */
 HRESULT WINAPI HlinkGetSpecialReference(ULONG uReference, LPWSTR *ppwzReference)
 {
     DWORD res, type, size = 100;
@@ -308,18 +339,89 @@
     return S_OK;
 }
 
+/***********************************************************************
+ *             HlinkTranslateURL (HLINK.@)
+ */
 HRESULT WINAPI HlinkTranslateURL(LPCWSTR pwzURL, DWORD grfFlags, LPWSTR *ppwzTranslatedURL)
 {
     FIXME("(%s %08x %p)\n", debugstr_w(pwzURL), grfFlags, ppwzTranslatedURL);
     return E_NOTIMPL;
 }
 
+/***********************************************************************
+ *             HlinkUpdateStackItem (HLINK.@)
+ */
 HRESULT WINAPI HlinkUpdateStackItem(IHlinkFrame *pihlframe, IHlinkBrowseContext *pihlbc,
         ULONG uHLID, IMoniker *pimkTrgt, LPCWSTR pwzLocation, LPCWSTR pwzFriendlyName)
 {
     FIXME("(%p %p %u %p %s %s)\n", pihlframe, pihlbc, uHLID, pimkTrgt, debugstr_w(pwzLocation),
           debugstr_w(pwzFriendlyName));
     return E_NOTIMPL;
+}
+
+/***********************************************************************
+ *             HlinkParseDisplayName (HLINK.@)
+ */
+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;
+}
+
+/***********************************************************************
+ *             HlinkResolveMonikerForData (HLINK.@)
+ */
+HRESULT WINAPI HlinkResolveMonikerForData(LPMONIKER pimkReference, DWORD reserved, LPBC pibc,
+        ULONG cFmtetc, FORMATETC *rgFmtetc, IBindStatusCallback *pibsc, LPMONIKER pimkBase)
+{
+    LPOLESTR name = NULL;
+    IBindCtx *bctx;
+    DWORD mksys = 0;
+    void *obj = NULL;
+    HRESULT hres;
+
+    TRACE("(%p %x %p %d %p %p %p)\n", pimkReference, reserved, pibc, cFmtetc, rgFmtetc, pibsc, pimkBase);
+
+    if(cFmtetc || rgFmtetc || pimkBase)
+        FIXME("Unsupported args\n");
+
+    hres = RegisterBindStatusCallback(pibc, pibsc, NULL /* FIXME */, 0);
+    if(FAILED(hres))
+        return hres;
+
+    hres = IMoniker_IsSystemMoniker(pimkReference, &mksys);
+    if(SUCCEEDED(hres) && mksys != MKSYS_URLMONIKER)
+        WARN("sysmk = %x\n", mksys);
+
+    /* FIXME: What is it for? */
+    CreateBindCtx(0, &bctx);
+    hres = IMoniker_GetDisplayName(pimkReference, bctx, NULL, &name);
+    IBindCtx_Release(bctx);
+    if(SUCCEEDED(hres)) {
+        TRACE("got display name %s\n", debugstr_w(name));
+        CoTaskMemFree(name);
+    }
+
+    return IMoniker_BindToStorage(pimkReference, pibc, NULL, &IID_IUnknown, &obj);
 }
 
 static HRESULT WINAPI HLinkCF_fnQueryInterface ( LPCLASSFACTORY iface,
@@ -435,6 +537,9 @@
     return S_OK;
 }
 
+/***********************************************************************
+ *             DllRegisterServer (HLINK.@)
+ */
 HRESULT WINAPI DllRegisterServer(void)
 {
     HRESULT r;

Modified: trunk/reactos/dll/win32/hlink/link.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/hlink/link.c?rev=32843&r1=32842&r2=32843&view=diff
==============================================================================
--- trunk/reactos/dll/win32/hlink/link.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/hlink/link.c [iso-8859-1] Fri Apr  4 08:13:15 2008
@@ -602,7 +602,7 @@
 {
     HlinkImpl *This = HlinkImpl_from_IPersistStream(iface);
     TRACE("(%p)\n", This);
-    memcpy(pClassID, &CLSID_StdHlink, sizeof(CLSID));
+    *pClassID = CLSID_StdHlink;
     return S_OK;
 }
 



More information about the Ros-diffs mailing list