diff options
Diffstat (limited to 'sql/handler.cc')
-rw-r--r-- | sql/handler.cc | 28 |
1 files changed, 17 insertions, 11 deletions
diff --git a/sql/handler.cc b/sql/handler.cc index e2c24c7842a..eec6e5c1212 100644 --- a/sql/handler.cc +++ b/sql/handler.cc @@ -1981,16 +1981,21 @@ bool mysql_xa_recover(THD *thd) { List<Item> field_list; Protocol *protocol= thd->protocol; + MEM_ROOT *mem_root= thd->mem_root; DBUG_ENTER("mysql_xa_recover"); - field_list.push_back(new Item_int(thd, "formatID", 0, - MY_INT32_NUM_DECIMAL_DIGITS)); - field_list.push_back(new Item_int(thd, "gtrid_length", 0, - MY_INT32_NUM_DECIMAL_DIGITS)); - field_list.push_back(new Item_int(thd, "bqual_length", 0, - MY_INT32_NUM_DECIMAL_DIGITS)); - field_list.push_back(new Item_empty_string(thd, "data", - XIDDATASIZE)); + field_list.push_back(new (mem_root) + Item_int(thd, "formatID", 0, + MY_INT32_NUM_DECIMAL_DIGITS)); + field_list.push_back(new (mem_root) + Item_int(thd, "gtrid_length", 0, + MY_INT32_NUM_DECIMAL_DIGITS)); + field_list.push_back(new (mem_root) + Item_int(thd, "bqual_length", 0, + MY_INT32_NUM_DECIMAL_DIGITS)); + field_list.push_back(new (mem_root) + Item_empty_string(thd, "data", + XIDDATASIZE)); if (protocol->send_result_set_metadata(&field_list, Protocol::SEND_NUM_ROWS | Protocol::SEND_EOF)) @@ -5525,11 +5530,12 @@ bool ha_show_status(THD *thd, handlerton *db_type, enum ha_stat_type stat) { List<Item> field_list; Protocol *protocol= thd->protocol; + MEM_ROOT *mem_root= thd->mem_root; bool result; - field_list.push_back(new Item_empty_string(thd, "Type", 10)); - field_list.push_back(new Item_empty_string(thd, "Name", FN_REFLEN)); - field_list.push_back(new Item_empty_string(thd, "Status", 10)); + field_list.push_back(new (mem_root) Item_empty_string(thd, "Type", 10)); + field_list.push_back(new (mem_root) Item_empty_string(thd, "Name", FN_REFLEN)); + field_list.push_back(new (mem_root) Item_empty_string(thd, "Status", 10)); if (protocol->send_result_set_metadata(&field_list, Protocol::SEND_NUM_ROWS | Protocol::SEND_EOF)) |