From 700d8b1f09073cdefc46513ba4eb8a81bcaa4808 Mon Sep 17 00:00:00 2001 From: unknown Date: Tue, 4 Sep 2007 20:03:12 -0700 Subject: Discovered a bug while working with backup. Since it is possible to execute a statement in a pre/post statment clause that can return a result, we need to test for that and free it. client/mysqlslap.c: Cleanup resuls if rows are returned. --- client/mysqlslap.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'client') diff --git a/client/mysqlslap.c b/client/mysqlslap.c index af29df6e4ba..02a0cbd04c5 100644 --- a/client/mysqlslap.c +++ b/client/mysqlslap.c @@ -1673,6 +1673,7 @@ static int run_statements(MYSQL *mysql, statement *stmt) { statement *ptr; + MYSQL_RES *result; DBUG_ENTER("run_statements"); for (ptr= stmt; ptr && ptr->length; ptr= ptr->next) @@ -1683,6 +1684,11 @@ run_statements(MYSQL *mysql, statement *stmt) my_progname, (uint)ptr->length, ptr->string, mysql_error(mysql)); exit(1); } + if (mysql_field_count(mysql)) + { + result= mysql_store_result(mysql); + mysql_free_result(result); + } } DBUG_RETURN(0); -- cgit v1.2.1