Huw Davies : msdaps: Add support for remoting IAccessor_GetBindings.

Alexandre Julliard julliard at winehq.org
Fri Feb 5 08:42:33 CST 2010


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

Author: Huw Davies <huw at codeweavers.com>
Date:   Thu Feb  4 14:13:17 2010 +0000

msdaps: Add support for remoting IAccessor_GetBindings.

---

 dlls/msdaps/row_server.c |   24 ++++++++++++++++++++----
 1 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/dlls/msdaps/row_server.c b/dlls/msdaps/row_server.c
index d4123bd..d220893 100644
--- a/dlls/msdaps/row_server.c
+++ b/dlls/msdaps/row_server.c
@@ -404,8 +404,19 @@ static HRESULT WINAPI server_GetBindings(IWineRowServer* iface, HACCESSOR hAcces
                                          DBBINDING **prgBindings)
 {
     server *This = impl_from_IWineRowServer(iface);
-    FIXME("(%p)->(%08lx, %p, %p, %p): stub\n", This, hAccessor, pdwAccessorFlags, pcBindings, prgBindings);
-    return E_NOTIMPL;
+    HRESULT hr;
+    IAccessor *accessor;
+
+    TRACE("(%p)->(%08lx, %p, %p, %p)\n", This, hAccessor, pdwAccessorFlags, pcBindings, prgBindings);
+
+    hr = IUnknown_QueryInterface(This->inner_unk, &IID_IAccessor, (void**)&accessor);
+    if(FAILED(hr)) return hr;
+
+    hr = IAccessor_GetBindings(accessor, hAccessor, pdwAccessorFlags, pcBindings, prgBindings);
+    IAccessor_Release(accessor);
+
+    TRACE("returning %08x\n", hr);
+    return hr;
 }
 
 static HRESULT WINAPI server_ReleaseAccessor(IWineRowServer* iface, HACCESSOR hAccessor,
@@ -1077,8 +1088,13 @@ static HRESULT WINAPI accessor_GetBindings(IAccessor *iface, HACCESSOR hAccessor
                                            DBCOUNTITEM *pcBindings, DBBINDING **prgBindings)
 {
     rowset_proxy *This = impl_from_IAccessor(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
+    HRESULT hr;
+
+    TRACE("(%p)->(%08lx, %p, %p, %p)\n", This, hAccessor, pdwAccessorFlags, pcBindings, prgBindings);
+
+    hr = IWineRowServer_GetBindings(This->server, hAccessor, pdwAccessorFlags, pcBindings, prgBindings);
+
+    return hr;
 }
 
 static HRESULT WINAPI accessor_ReleaseAccessor(IAccessor *iface, HACCESSOR hAccessor, DBREFCOUNT *pcRefCount)




More information about the wine-cvs mailing list