diff options
author | unknown <monty@mashka.mysql.fi> | 2003-02-07 15:47:24 +0200 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2003-02-07 15:47:24 +0200 |
commit | d66e60248c9f448b9d251358e0acfd97d1e3f84e (patch) | |
tree | 0661c54a51aa711947173e8a8e27e2e46cfa971c /sql/item_func.cc | |
parent | 2ff82a7b152181a49814f5ea125ca8dc6551fbdd (diff) | |
download | mariadb-git-d66e60248c9f448b9d251358e0acfd97d1e3f84e.tar.gz |
After merge fixes & remove compiler warnings
Added lengths for all MYSQL_FIELD string parameters
Changed field length to 2 byte in .frm files
configure.in:
After merge fixes
include/ft_global.h:
Fixed copyright
include/my_sys.h:
Remove compiler warnings
include/mysql.h:
Added lengths for all MYSQL_FIELD string parameters
include/mysql_com.h:
Remove compiler warning
myisam/ft_boolean_search.c:
Removed compiler warnings
myisam/ft_dump.c:
Removed compiler warnings
myisam/ft_stopwords.c:
Copy file from MySQL 4.0
myisam/mi_delete.c:
Fixed compiler warning
myisam/sort.c:
Indentation changes
myisam/sp_test.c:
Remove compiler warnings
mysql-test/r/func_group.result:
After merge fixes
mysql-test/r/group_by.result:
After merge fixes
mysql-test/r/rpl_insert_id.result:
After merge fixes
mysql-test/r/rpl_master_pos_wait.result:
After merge fixes
mysql-test/t/rpl000009.test:
After merge fixes
mysql-test/t/rpl_insert_id.test:
After merge fixes
mysql-test/t/subselect.test:
After merge fixes
sql/item_cmpfunc.cc:
After merge fixes
sql/item_cmpfunc.h:
After merge fixes
sql/item_func.cc:
After merge fixes
sql/item_func.h:
After merge fixes
sql/item_strfunc.cc:
After merge fixes
sql/item_strfunc.h:
After merge fixes
sql/log.cc:
After merge fixes
sql/mysql_priv.h:
After merge fixes
sql/mysqld.cc:
After merge fixes
sql/sql_db.cc:
After merge fixes
sql/sql_handler.cc:
After merge fixes
sql/sql_parse.cc:
After merge fixes
sql/sql_show.cc:
After merge fixes
sql/sql_udf.cc:
After merge fixes
sql/table.cc:
Changed field length to 2 byte in .frm files
sql/unireg.cc:
Changed field length to 2 byte in .frm files
Diffstat (limited to 'sql/item_func.cc')
-rw-r--r-- | sql/item_func.cc | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/sql/item_func.cc b/sql/item_func.cc index b2faae9425c..6494573458c 100644 --- a/sql/item_func.cc +++ b/sql/item_func.cc @@ -1069,18 +1069,23 @@ longlong Item_func_field::val_int() return 0; } -void Item_func_field::split_sum_func(List<Item> &fields) + +void Item_func_field::split_sum_func(Item **ref_pointer_array, + List<Item> &fields) { if (item->with_sum_func && item->type() != SUM_FUNC_ITEM) - item->split_sum_func(fields); + item->split_sum_func(ref_pointer_array, fields); else if (item->used_tables() || item->type() == SUM_FUNC_ITEM) { + uint el= fields.elements; fields.push_front(item); - item= new Item_ref((Item**) fields.head_ref(), 0, item->name); - } - Item_func::split_sum_func(fields); + ref_pointer_array[el]= item; + item= new Item_ref(ref_pointer_array + el, 0, item->name); + } + Item_func::split_sum_func(ref_pointer_array, fields); } + longlong Item_func_ascii::val_int() { String *res=args[0]->val_str(&value); |