Module: wine Branch: master Commit: 3e0deb35968680bc07333a32a6fc64a642d6bf7f URL: https://gitlab.winehq.org/wine/wine/-/commit/3e0deb35968680bc07333a32a6fc64a...
Author: Alistair Leslie-Hughes leslie_alistair@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; }