mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
memory leacks in PS with subqueries fixed (adddition to fix of BUG#2462)
This commit is contained in:
@ -1244,22 +1244,28 @@ void Statement::set_statement(Statement *stmt)
|
||||
mem_root= stmt->mem_root;
|
||||
}
|
||||
|
||||
|
||||
void Statement::set_n_backup_item_arena(Statement *set, Statement *backup)
|
||||
{
|
||||
backup->mem_root= mem_root;
|
||||
backup->free_list= free_list;
|
||||
backup->set_item_arena(this);
|
||||
set_item_arena(set);
|
||||
}
|
||||
|
||||
|
||||
void Statement::restore_backup_item_arena(Statement *set, Statement *backup)
|
||||
{
|
||||
set->set_item_arena(this);
|
||||
set_item_arena(backup);
|
||||
// reset backup mem_root to avoid its freeing
|
||||
init_alloc_root(&backup->mem_root, 0, 0);
|
||||
}
|
||||
|
||||
void Statement::set_item_arena(Statement *set)
|
||||
{
|
||||
mem_root= set->mem_root;
|
||||
free_list= set->free_list;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Statement::~Statement()
|
||||
{
|
||||
free_root(&mem_root, MYF(0));
|
||||
|
Reference in New Issue
Block a user