diff --git a/sql/sql_prepare.cc b/sql/sql_prepare.cc index d5cf671abcd..2bf2f165a66 100644 --- a/sql/sql_prepare.cc +++ b/sql/sql_prepare.cc @@ -2447,6 +2447,7 @@ Prepared_statement::~Prepared_statement() if (cursor) cursor->Cursor::~Cursor(); free_items(); + free_root(cursor->mem_root, MYF(0)); delete lex->result; } diff --git a/sql/sql_select.cc b/sql/sql_select.cc index c6a9bd54f9c..f5c1c784ece 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -1920,7 +1920,6 @@ Cursor::~Cursor() { if (is_open()) close(FALSE); - free_root(mem_root, MYF(0)); } /*********************************************************************/