diff options
author | monty@mysql.com <> | 2005-07-04 16:01:04 +0300 |
---|---|---|
committer | monty@mysql.com <> | 2005-07-04 16:01:04 +0300 |
commit | 5b8683db74444e14c54a2d3c110415debf63b936 (patch) | |
tree | 5d98db8559f519e7aac489fe047ee7fb3f2b8d3b /sql/item_cmpfunc.cc | |
parent | fe30ec903276029beca788d99a28cb544d7ae528 (diff) | |
download | mariadb-git-5b8683db74444e14c54a2d3c110415debf63b936.tar.gz |
After merge fixes
Diffstat (limited to 'sql/item_cmpfunc.cc')
-rw-r--r-- | sql/item_cmpfunc.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/sql/item_cmpfunc.cc b/sql/item_cmpfunc.cc index bce6a58330f..5ed857319be 100644 --- a/sql/item_cmpfunc.cc +++ b/sql/item_cmpfunc.cc @@ -1578,17 +1578,21 @@ my_decimal *Item_func_case::val_decimal(my_decimal *decimal_value) } -bool Item_func_case::fix_fields(THD *thd, struct st_table_list *tables, - Item **ref) +bool Item_func_case::fix_fields(THD *thd, Item **ref) { /* buff should match stack usage from Item_func_case::val_int() -> Item_func_case::find_item() */ char buff[MAX_FIELD_WIDTH*2+sizeof(String)*2+sizeof(String*)*2+sizeof(double)*2+sizeof(longlong)*2]; + bool res= Item_func::fix_fields(thd, ref); + /* + Call check_stack_overrun after fix_fields to be sure that stack variable + is not optimized away + */ if (check_stack_overrun(thd, STACK_MIN_SIZE, buff)) return TRUE; // Fatal error flag is set! - return Item_func::fix_fields(thd, tables, ref); + return res; } |