msdaps: Add support for remoting IRowsetInfo_GetProperties.
authorHuw Davies <huw@codeweavers.com>
Thu, 4 Feb 2010 14:21:30 +0000 (14:21 +0000)
committerAlexandre Julliard <julliard@winehq.org>
Fri, 5 Feb 2010 12:14:46 +0000 (13:14 +0100)
dlls/msdaps/row_server.c

index d22089301f0aa718359c2f79d6153646e94c843f..24cb36737ff8bfbdd3ff185ba39b9857d36c5d0b 100644 (file)
@@ -351,8 +351,19 @@ static HRESULT WINAPI server_GetProperties(IWineRowServer* iface, ULONG cPropert
                                            DBPROPSET **prgPropertySets)
 {
     server *This = impl_from_IWineRowServer(iface);
-    FIXME("(%p)->(%d, %p, %p, %p)\n", This, cPropertyIDSets, rgPropertyIDSets, pcPropertySets, prgPropertySets);
-    return E_NOTIMPL;
+    IRowsetInfo *rowsetinfo;
+    HRESULT hr;
+
+    TRACE("(%p)->(%d, %p, %p, %p)\n", This, cPropertyIDSets, rgPropertyIDSets, pcPropertySets, prgPropertySets);
+
+    hr = IUnknown_QueryInterface(This->inner_unk, &IID_IRowsetInfo, (void**)&rowsetinfo);
+    if(FAILED(hr)) return hr;
+
+    hr = IRowsetInfo_GetProperties(rowsetinfo, cPropertyIDSets, rgPropertyIDSets, pcPropertySets, prgPropertySets);
+    IRowsetInfo_Release(rowsetinfo);
+
+    TRACE("returning %08x\n", hr);
+    return hr;
 }
 
 static HRESULT WINAPI server_GetReferencedRowset(IWineRowServer* iface, DBORDINAL iOrdinal,
@@ -1010,8 +1021,13 @@ static HRESULT WINAPI rowsetinfo_GetProperties(IRowsetInfo *iface, const ULONG c
                                                DBPROPSET **prgPropertySets)
 {
     rowset_proxy *This = impl_from_IRowsetInfo(iface);
-    FIXME("(%p)\n", This);
-    return E_NOTIMPL;
+    HRESULT hr;
+
+    TRACE("(%p)->(%d, %p, %p, %p)\n", This, cPropertyIDSets, rgPropertyIDSets, pcPropertySets, prgPropertySets);
+
+    hr = IWineRowServer_GetProperties(This->server, cPropertyIDSets, rgPropertyIDSets, pcPropertySets, prgPropertySets);
+
+    return hr;
 }
 
 static HRESULT WINAPI rowsetinfo_GetReferencedRowset(IRowsetInfo *iface, DBORDINAL iOrdinal, REFIID riid,