Alistair Leslie-Hughes : msdasql: Trace unsupported rowset interfaces.
Alexandre Julliard
julliard at winehq.org
Tue Nov 2 17:27:44 CDT 2021
Module: wine
Branch: master
Commit: 1b443bd516ea0a74303cc69450b2a872b43e8d88
URL: https://source.winehq.org/git/wine.git/?a=commit;h=1b443bd516ea0a74303cc69450b2a872b43e8d88
Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date: Tue Nov 2 13:21:26 2021 +1100
msdasql: Trace unsupported rowset interfaces.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/msdasql/session.c | 15 +++++++++++++++
dlls/msdasql/tests/provider.c | 10 ++++++++++
2 files changed, 25 insertions(+)
diff --git a/dlls/msdasql/session.c b/dlls/msdasql/session.c
index 5345701a35e..0298c7e7424 100644
--- a/dlls/msdasql/session.c
+++ b/dlls/msdasql/session.c
@@ -472,6 +472,21 @@ static HRESULT WINAPI msdasql_rowset_QueryInterface(IRowset *iface, REFIID riid,
{
*ppv = &rowset->IColumnsRowset_iface;
}
+ else if (IsEqualGUID(&IID_IRowsetChange, riid))
+ {
+ TRACE("IID_IRowsetChange not supported\n");
+ return E_NOINTERFACE;
+ }
+ else if (IsEqualGUID(&IID_IRowsetUpdate, riid))
+ {
+ TRACE("IID_IRowsetUpdate not supported\n");
+ return E_NOINTERFACE;
+ }
+ else if (IsEqualGUID(&IID_IRowsetLocate, riid))
+ {
+ TRACE("IID_IRowsetLocate not supported\n");
+ return E_NOINTERFACE;
+ }
if(*ppv)
{
diff --git a/dlls/msdasql/tests/provider.c b/dlls/msdasql/tests/provider.c
index f10156aacfa..8b076ed4479 100644
--- a/dlls/msdasql/tests/provider.c
+++ b/dlls/msdasql/tests/provider.c
@@ -228,6 +228,7 @@ static void test_rowset_interfaces(IRowset *rowset)
IColumnsInfo *col_info;
IColumnsRowset *col_rs;
IAccessor *accessor;
+ IUnknown *unk;
HRESULT hr;
hr = IRowset_QueryInterface(rowset, &IID_IRowsetInfo, (void**)&info);
@@ -245,6 +246,15 @@ static void test_rowset_interfaces(IRowset *rowset)
hr = IRowset_QueryInterface(rowset, &IID_IColumnsRowset, (void**)&col_rs);
ok(hr == S_OK, "got 0x%08x\n", hr);
IColumnsRowset_Release(col_rs);
+
+ hr = IRowset_QueryInterface(rowset, &IID_IRowsetChange, (void**)&unk);
+ ok(hr == E_NOINTERFACE, "got 0x%08x\n", hr);
+
+ hr = IRowset_QueryInterface(rowset, &IID_IRowsetUpdate, (void**)&unk);
+ ok(hr == E_NOINTERFACE, "got 0x%08x\n", hr);
+
+ hr = IRowset_QueryInterface(rowset, &IID_IRowsetLocate, (void**)&unk);
+ ok(hr == E_NOINTERFACE, "got 0x%08x\n", hr);
}
static void test_command_rowset(IUnknown *cmd)
More information about the wine-cvs
mailing list