summaryrefslogtreecommitdiff
path: root/sql/sql_load.cc
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mysql.com>2010-05-05 14:34:20 +0400
committerAlexander Barkov <bar@mysql.com>2010-05-05 14:34:20 +0400
commit3c93a784d415efad81065bb5dcb3f3c897374019 (patch)
tree1abfd7db1feb7aa4fd379967e8d9010ec18e2b48 /sql/sql_load.cc
parentf90f341491d283e445795b6c21f3293146e6ed83 (diff)
downloadmariadb-git-3c93a784d415efad81065bb5dcb3f3c897374019.tar.gz
Bug#51571 load xml infile causes server crash
Problem: item->name was NULL for Item_user_var_as_out_param which made strcmp(something, item->name) crash in the LOAD XML code. Fix: - item_func.h: Adding set_name() in constuctor for Item_user_var_as_out_param - sql_load.cc: Changing the condition in write_execute_load_query_log_event() which distiguished between Item_user_var_as_out_param and Item_field from if (item->name == NULL) to if (item->type() == Item::FIELD_ITEM) - loadxml.result, loadxml.test: adding tests
Diffstat (limited to 'sql/sql_load.cc')
-rw-r--r--sql/sql_load.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/sql/sql_load.cc b/sql/sql_load.cc
index 87a347b9f98..9bab87e2720 100644
--- a/sql/sql_load.cc
+++ b/sql/sql_load.cc
@@ -696,7 +696,7 @@ static bool write_execute_load_query_log_event(THD *thd, sql_exchange* ex,
{
if (n++)
pfields.append(", ");
- if (item->name)
+ if (item->type() == Item::FIELD_ITEM)
{
pfields.append("`");
pfields.append(item->name);