From b076cdb20825396c5e9b259e9b6cff0e9326fdb3 Mon Sep 17 00:00:00 2001 From: "kent@mysql.com" <> Date: Mon, 16 May 2005 01:08:42 +0200 Subject: [PATCH] mysqltest.c: To solve bug#8455, call mysql_affected_rows() earlier, before query to find warnings --- client/mysqltest.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/client/mysqltest.c b/client/mysqltest.c index 1f95f1eaeeb..e60d9ecd1c5 100644 --- a/client/mysqltest.c +++ b/client/mysqltest.c @@ -2597,6 +2597,8 @@ static int run_query_normal(MYSQL* mysql, struct st_query* q, int flags) if (!disable_result_log) { + ulong affected_rows; /* Ok to be undef if 'disable_info' is set */ + if (res) { MYSQL_FIELD *field= mysql_fetch_fields(res); @@ -2619,6 +2621,13 @@ static int run_query_normal(MYSQL* mysql, struct st_query* q, int flags) append_result(ds, res); } + /* + Need to call mysql_affected_rows() before the new + query to find the warnings + */ + if (!disable_info) + affected_rows= (ulong)mysql_affected_rows(mysql); + /* Add all warnings to the result */ if (!disable_warnings && mysql_warning_count(mysql)) { @@ -2641,7 +2650,7 @@ static int run_query_normal(MYSQL* mysql, struct st_query* q, int flags) if (!disable_info) { char buf[40]; - sprintf(buf,"affected rows: %lu\n",(ulong) mysql_affected_rows(mysql)); + sprintf(buf,"affected rows: %lu\n", affected_rows); dynstr_append(ds, buf); if (mysql_info(mysql)) { -- 2.30.9