summaryrefslogtreecommitdiff
path: root/sql/item_strfunc.cc
diff options
context:
space:
mode:
authorhf@deer.(none) <>2003-12-30 14:08:19 +0400
committerhf@deer.(none) <>2003-12-30 14:08:19 +0400
commitbfe134b86fad8eaa46196c8283cc91e6c77769b0 (patch)
tree2ae6e41d1324a906e2f8a6868b34fe75950e736f /sql/item_strfunc.cc
parent1547a03c797fa547f1664d9c56a313daf62972bc (diff)
downloadmariadb-git-bfe134b86fad8eaa46196c8283cc91e6c77769b0.tar.gz
Fix for prepared statements
Here i added Item_*::cleanup() functions, removed a lot of ~Item_*'s, added code to restore order_list and group_list
Diffstat (limited to 'sql/item_strfunc.cc')
-rw-r--r--sql/item_strfunc.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/sql/item_strfunc.cc b/sql/item_strfunc.cc
index 3cb03d7ea49..b4580c79f9c 100644
--- a/sql/item_strfunc.cc
+++ b/sql/item_strfunc.cc
@@ -616,7 +616,8 @@ void Item_func_concat_ws::split_sum_func(Item **ref_pointer_array,
uint el= fields.elements;
fields.push_front(separator);
ref_pointer_array[el]= separator;
- separator= new Item_ref(ref_pointer_array + el, 0, separator->name);
+ separator= new Item_ref(ref_pointer_array + el,
+ &separator, 0, separator->name);
}
Item_str_func::split_sum_func(ref_pointer_array, fields);
}
@@ -1709,7 +1710,7 @@ void Item_func_make_set::split_sum_func(Item **ref_pointer_array,
uint el= fields.elements;
fields.push_front(item);
ref_pointer_array[el]= item;
- item= new Item_ref(ref_pointer_array + el, 0, item->name);
+ item= new Item_ref(ref_pointer_array + el, &item, 0, item->name);
}
Item_str_func::split_sum_func(ref_pointer_array, fields);
}