Alistair Leslie-Hughes : msdasql: Select statements return -1 for affected rows in ICommandText Execute.
Module: wine Branch: master Commit: 3e0deb35968680bc07333a32a6fc64a642d6bf7f URL: https://gitlab.winehq.org/wine/wine/-/commit/3e0deb35968680bc07333a32a6fc64a... Author: Alistair Leslie-Hughes <leslie_alistair(a)hotmail.com> Date: Wed Sep 28 16:23:31 2022 +1000 msdasql: Select statements return -1 for affected rows in ICommandText Execute. --- dlls/msdasql/session.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/dlls/msdasql/session.c b/dlls/msdasql/session.c index 50da5f30dbf..2c1f193107b 100644 --- a/dlls/msdasql/session.c +++ b/dlls/msdasql/session.c @@ -1244,13 +1244,6 @@ static HRESULT WINAPI command_Execute(ICommandText *iface, IUnknown *outer, REFI return E_FAIL; } - ret = SQLRowCount(hstmt, &results); - if (ret != SQL_SUCCESS) - ERR("SQLRowCount failed (%d)\n", ret); - - if (affected) - *affected = results; - *rowset = NULL; if (!wcsnicmp( command->query, L"select ", 7 )) { @@ -1273,7 +1266,16 @@ static HRESULT WINAPI command_Execute(ICommandText *iface, IUnknown *outer, REFI IRowset_Release(&msrowset->IRowset_iface); } else + { + ret = SQLRowCount(hstmt, &results); + if (ret != SQL_SUCCESS) + ERR("SQLRowCount failed (%d)\n", ret); + SQLFreeStmt(hstmt, SQL_CLOSE); + } + + if (affected) + *affected = results; return hr; }
participants (1)
-
Alexandre Julliard