diff options
Diffstat (limited to 'sql/item_strfunc.h')
-rw-r--r-- | sql/item_strfunc.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sql/item_strfunc.h b/sql/item_strfunc.h index 2b308630b48..60462621630 100644 --- a/sql/item_strfunc.h +++ b/sql/item_strfunc.h @@ -101,8 +101,9 @@ public: void update_used_tables(); bool fix_fields(THD *thd, TABLE_LIST *tlist, Item **ref) { - return (separator->fix_fields(thd, tlist, &separator) - || Item_func::fix_fields(thd, tlist, ref)); + return (separator->check_cols(1) || + separator->fix_fields(thd, tlist, &separator) || + Item_func::fix_fields(thd, tlist, ref)); } const char *func_name() const { return "concat_ws"; } bool check_loop(uint id) @@ -362,7 +363,8 @@ public: String *val_str(String *str); bool fix_fields(THD *thd, TABLE_LIST *tlist, Item **ref) { - return (item->fix_fields(thd, tlist, &item) || + return (item->check_cols(1) || + item->fix_fields(thd, tlist, &item) || Item_func::fix_fields(thd, tlist, ref)); } void fix_length_and_dec(); @@ -389,7 +391,8 @@ public: String *val_str(String *str); bool fix_fields(THD *thd, TABLE_LIST *tlist, Item **ref) { - return (item->fix_fields(thd, tlist, &item) || + return (item->check_cols(1) || + item->fix_fields(thd, tlist, &item) || Item_func::fix_fields(thd, tlist, ref)); } void fix_length_and_dec(); |