connectivity/qa/connectivity/mysql/mysql.cxx | 6 ++++++ connectivity/source/drivers/mysqlc/mysqlc_resultset.cxx | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-)
New commits: commit 00c3278816980d2d3949a5665133248058b93b16 Author: Tamas Bunth <tamas.bu...@collabora.co.uk> AuthorDate: Thu Nov 8 18:48:54 2018 +0100 Commit: Andras Timar <andras.ti...@collabora.com> CommitDate: Fri Nov 9 09:55:45 2018 +0100 mysqlc: fix return value of XResultSet::next Change-Id: I59e4803a5d9b01062eb0eaca0bf65d28298bd3e4 Reviewed-on: https://gerrit.libreoffice.org/63122 Reviewed-by: Andras Timar <andras.ti...@collabora.com> Tested-by: Andras Timar <andras.ti...@collabora.com> diff --git a/connectivity/qa/connectivity/mysql/mysql.cxx b/connectivity/qa/connectivity/mysql/mysql.cxx index f78ea2ea57e5..8f2f664056c4 100644 --- a/connectivity/qa/connectivity/mysql/mysql.cxx +++ b/connectivity/qa/connectivity/mysql/mysql.cxx @@ -123,6 +123,7 @@ void MysqlTestDriver::testCreateAndDropTable() uno::Reference<XStatement> xStatement = xConnection->createStatement(); CPPUNIT_ASSERT(xStatement.is()); + xStatement->executeUpdate("DROP TABLE IF EXISTS myTestTable"); auto nUpdateCount = xStatement->executeUpdate("CREATE TABLE myTestTable (id INTEGER PRIMARY KEY)"); @@ -143,6 +144,7 @@ void MysqlTestDriver::testIntegerInsertAndQuery() Reference<XStatement> xStatement = xConnection->createStatement(); CPPUNIT_ASSERT(xStatement.is()); + xStatement->executeUpdate("DROP TABLE IF EXISTS myTestTable"); auto nUpdateCount = xStatement->executeUpdate("CREATE TABLE myTestTable (id INTEGER PRIMARY KEY)"); @@ -171,6 +173,9 @@ void MysqlTestDriver::testIntegerInsertAndQuery() CPPUNIT_ASSERT_MESSAGE("not enough result after query", hasRow); CPPUNIT_ASSERT_EQUAL(i, xRow->getLong(1)); // first and only column } + bool hasRow = xResultSet->next(); + // no more rows + CPPUNIT_ASSERT_MESSAGE("next returns true after last row", !hasRow); nUpdateCount = xStatement->executeUpdate("DROP TABLE myTestTable"); CPPUNIT_ASSERT_EQUAL(0, nUpdateCount); // it's a DDL statement @@ -186,6 +191,7 @@ void MysqlTestDriver::testDBPositionChange() Reference<XStatement> xStatement = xConnection->createStatement(); CPPUNIT_ASSERT(xStatement.is()); + xStatement->executeUpdate("DROP TABLE IF EXISTS myTestTable"); auto nUpdateCount = xStatement->executeUpdate("CREATE TABLE myTestTable (id INTEGER PRIMARY KEY)"); diff --git a/connectivity/source/drivers/mysqlc/mysqlc_resultset.cxx b/connectivity/source/drivers/mysqlc/mysqlc_resultset.cxx index d08a31bab11e..50ab0be3af16 100644 --- a/connectivity/source/drivers/mysqlc/mysqlc_resultset.cxx +++ b/connectivity/source/drivers/mysqlc/mysqlc_resultset.cxx @@ -693,7 +693,7 @@ sal_Bool SAL_CALL OResultSet::next() MutexGuard aGuard(m_aMutex); checkDisposed(OResultSet_BASE::rBHelper.bDisposed); ensureResultFetched(); - if (m_nRowPosition >= m_nRowCount) + if (m_nRowPosition + 1 >= m_nRowCount) return false; ++m_nRowPosition; return true; _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits