Huw Davies : msdaps: Implement ReleaseAccessor Proxy and Stub.

Alexandre Julliard julliard at winehq.org
Mon Oct 26 10:08:42 CDT 2009


Module: wine
Branch: master
Commit: d1472e2af21618070005b46c904fee835da4a169
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=d1472e2af21618070005b46c904fee835da4a169

Author: Huw Davies <huw at codeweavers.com>
Date:   Mon Oct 26 13:48:09 2009 +0000

msdaps: Implement ReleaseAccessor Proxy and Stub.

---

 dlls/msdaps/usrmarshal.c |   29 +++++++++++++++++++++++++----
 1 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/dlls/msdaps/usrmarshal.c b/dlls/msdaps/usrmarshal.c
index 01dcfc6..ae812ad 100644
--- a/dlls/msdaps/usrmarshal.c
+++ b/dlls/msdaps/usrmarshal.c
@@ -569,13 +569,34 @@ HRESULT __RPC_STUB IAccessor_GetBindings_Stub(IAccessor* This, HACCESSOR hAccess
 
 HRESULT CALLBACK IAccessor_ReleaseAccessor_Proxy(IAccessor* This, HACCESSOR hAccessor, DBREFCOUNT *pcRefCount)
 {
-    FIXME("(%p)->(%lx, %p): stub\n", This, hAccessor, pcRefCount);
-    return E_NOTIMPL;
+    HRESULT hr;
+    IErrorInfo *error;
+    DBREFCOUNT ref;
+
+    TRACE("(%p)->(%lx, %p)\n", This, hAccessor, pcRefCount);
+
+    hr = IAccessor_RemoteReleaseAccessor_Proxy(This, hAccessor, &ref, &error);
+
+    if(pcRefCount) *pcRefCount = ref;
+    if(error)
+    {
+        SetErrorInfo(0, error);
+        IErrorInfo_Release(error);
+    }
+    return hr;
 }
 
 HRESULT __RPC_STUB IAccessor_ReleaseAccessor_Stub(IAccessor* This, HACCESSOR hAccessor, DBREFCOUNT *pcRefCount,
                                                   IErrorInfo **ppErrorInfoRem)
 {
-    FIXME("(%p)->(%lx, %p, %p): stub\n", This, hAccessor, pcRefCount, ppErrorInfoRem);
-    return E_NOTIMPL;
+    HRESULT hr;
+
+    TRACE("(%p)->(%lx, %p, %p)\n", This, hAccessor, pcRefCount, ppErrorInfoRem);
+
+    *ppErrorInfoRem = NULL;
+
+    hr = IAccessor_ReleaseAccessor(This, hAccessor, pcRefCount);
+
+    if(FAILED(hr)) GetErrorInfo(0, ppErrorInfoRem);
+    return hr;
 }




More information about the wine-cvs mailing list