From 41a4379cb45419a376043ca5f8c5a2bca82cea7c Mon Sep 17 00:00:00 2001 From: "Christoph M. Becker" Date: Tue, 6 Aug 2019 14:30:41 +0200 Subject: Fix #41997: SP call yields additional empty result set When stored procedures are called, the "final result set is a status result that includes no result set". Calling `::nextRowset()` on the actual last result set should return FALSE, since there is actually no further result set to be processed. --- ext/pdo_mysql/mysql_statement.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'ext/pdo_mysql/mysql_statement.c') diff --git a/ext/pdo_mysql/mysql_statement.c b/ext/pdo_mysql/mysql_statement.c index e230cfbf05..950aa64f07 100644 --- a/ext/pdo_mysql/mysql_statement.c +++ b/ext/pdo_mysql/mysql_statement.c @@ -425,14 +425,14 @@ static int pdo_mysql_stmt_next_rowset(pdo_stmt_t *stmt) /* {{{ */ pdo_mysql_error_stmt(stmt); PDO_DBG_RETURN(0); } else { - PDO_DBG_RETURN(pdo_mysql_fill_stmt_from_result(stmt)); + PDO_DBG_RETURN(pdo_mysql_fill_stmt_from_result(stmt) && stmt->row_count); } #else if (mysql_next_result(H->server) > 0) { pdo_mysql_error_stmt(stmt); PDO_DBG_RETURN(0); } else { - PDO_DBG_RETURN(pdo_mysql_fill_stmt_from_result(stmt)); + PDO_DBG_RETURN(pdo_mysql_fill_stmt_from_result(stmt) && stmt->row_count); } #endif } -- cgit v1.2.1