From 9917ce268d41942e977e0cfe0f093c20bb4018a2 Mon Sep 17 00:00:00 2001 From: unknown Date: Mon, 16 Jul 2007 19:08:07 +0500 Subject: [PATCH] Bug #29687 mysql_stmt_store_result memory leak in libmysqld In embedded server we use result->alloc to store field data for the result, but we didn't clean the result->alloc if the query returned an empty recordset. Cleaning for the empty recordset enabled libmysql/libmysql.c: Bug #29687 mysql_stmt_store_result memory leak in libmysqld we should clean result->alloc even if we have nothin in 'data' field --- libmysql/libmysql.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libmysql/libmysql.c b/libmysql/libmysql.c index 72bc4445d83..1a0aae414ed 100644 --- a/libmysql/libmysql.c +++ b/libmysql/libmysql.c @@ -4945,7 +4945,7 @@ static my_bool reset_stmt_handle(MYSQL_STMT *stmt, uint flags) Reset stored result set if so was requested or it's a part of cursor fetch. */ - if (result->data && (flags & RESET_STORE_RESULT)) + if (flags & RESET_STORE_RESULT) { /* Result buffered */ free_root(&result->alloc, MYF(MY_KEEP_PREALLOC));