1
0
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:
bell@sanja.is.com.ua
2004-02-12 03:10:26 +02:00
parent 2fa0c78ec4
commit 272bd74abb
12 changed files with 157 additions and 72 deletions

View File

@ -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));