[PATCH] Fixed IDataInitialize definition

Nikolay Sivov nsivov at codeweavers.com
Sun Jan 29 12:30:23 CST 2017


Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
---
 dlls/oledb32/datainit.c | 10 +++++-----
 include/msdasc.idl      | 10 ++++++++--
 2 files changed, 13 insertions(+), 7 deletions(-)

diff --git a/dlls/oledb32/datainit.c b/dlls/oledb32/datainit.c
index 42d5daebad..8d6b8eff5a 100644
--- a/dlls/oledb32/datainit.c
+++ b/dlls/oledb32/datainit.c
@@ -918,13 +918,13 @@ static HRESULT WINAPI datainit_CreateDBInstance(IDataInitialize *iface, REFCLSID
     return CoCreateInstance(provider, outer, clsctx, riid, (void**)datasource);
 }
 
-static HRESULT WINAPI datainit_RemoteCreateDBInstanceEx(IDataInitialize *iface, REFCLSID clsidProvider,
-                                IUnknown *pUnkOuter, DWORD dwClsCtx, LPWSTR pwszReserved, COSERVERINFO *pServerInfo,
-                                DWORD cmq, GUID **rgpIID, IUnknown **rgpItf, HRESULT *rghr)
+static HRESULT WINAPI datainit_CreateDBInstanceEx(IDataInitialize *iface, REFCLSID provider, IUnknown *outer,
+    DWORD clsctx, LPWSTR reserved, COSERVERINFO *server_info, DWORD cmq, MULTI_QI *results)
 {
     datainit *This = impl_from_IDataInitialize(iface);
 
-    FIXME("(%p)->()\n", This);
+    FIXME("(%p)->(%s %p %#x %s %p %u %p)\n", This, debugstr_guid(provider), outer, clsctx,
+        debugstr_w(reserved), server_info, cmq, results);
 
     return E_NOTIMPL;
 }
@@ -958,7 +958,7 @@ static const struct IDataInitializeVtbl datainit_vtbl =
     datainit_GetDataSource,
     datainit_GetInitializationString,
     datainit_CreateDBInstance,
-    datainit_RemoteCreateDBInstanceEx,
+    datainit_CreateDBInstanceEx,
     datainit_LoadStringFromStorage,
     datainit_WriteStringToStorage
 };
diff --git a/include/msdasc.idl b/include/msdasc.idl
index e3efb1da31..6a904ba1d2 100644
--- a/include/msdasc.idl
+++ b/include/msdasc.idl
@@ -102,10 +102,16 @@ library MSDASC
                         [in] DWORD dwClsCtx, [in] LPWSTR pwszReserved,
                         [in] REFIID riid, [out] IUnknown** ppDataSource);
 
+        [local]
+        HRESULT CreateDBInstanceEx([in] REFCLSID clsidProvider,  [in] IUnknown* pUnkOuter,
+                        [in] DWORD dwClsCtx, [in] LPWSTR pwszReserved,  [in] COSERVERINFO* pServerInfo,
+                        [in] DWORD cmq,  [in, out, size_is(cmq)] MULTI_QI *results);
+
+        [call_as(CreateDBInstanceEx)]
         HRESULT RemoteCreateDBInstanceEx([in] REFCLSID clsidProvider,  [in] IUnknown* pUnkOuter,
                         [in] DWORD dwClsCtx, [in] LPWSTR pwszReserved,  [in] COSERVERINFO* pServerInfo,
-                        [in] DWORD cmq,  [in] GUID** rgpIID,  [out] IUnknown** rgpItf,
-                        [out] HRESULT* rghr);
+                        [in] DWORD cmq,  [in, size_is(cmq)] const IID **iids, [out, size_is(cmq)] IUnknown **ifs,
+                        [out, size_is(cmq)] HRESULT *hr);
 
         HRESULT LoadStringFromStorage([in] LPWSTR pwszFileName, [out] LPWSTR* ppwszInitializationString);
 
-- 
2.11.0




More information about the wine-patches mailing list