diff options
Diffstat (limited to 'sql/table.cc')
-rw-r--r-- | sql/table.cc | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/sql/table.cc b/sql/table.cc index 066eb506835..aa5f11bbe30 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -3560,7 +3560,7 @@ bool TABLE_LIST::create_field_translation(THD *thd) SELECT_LEX *select= get_single_select(); List_iterator_fast<Item> it(select->item_list); uint field_count= 0; - Query_arena *arena= thd->stmt_arena, backup; + Query_arena *arena, backup; bool res= FALSE; if (thd->stmt_arena->is_conventional() || @@ -3598,10 +3598,7 @@ bool TABLE_LIST::create_field_translation(THD *thd) return FALSE; } - if (arena->is_conventional()) - arena= 0; // For easier test - else - thd->set_n_backup_active_arena(arena, &backup); + arena= thd->activate_stmt_arena_if_needed(&backup); /* Create view fields translation table */ |