diff options
author | unknown <jimw@mysql.com> | 2005-11-29 11:52:58 -0800 |
---|---|---|
committer | unknown <jimw@mysql.com> | 2005-11-29 11:52:58 -0800 |
commit | a171aa693e7f1c28ce67761621d032704fabde70 (patch) | |
tree | 9d576c89a7af36d9d1aae6bdddce1da4749304b8 /sql/item.cc | |
parent | 5d7b85e57fe21c7c5b0602026172d1ca00c3066b (diff) | |
parent | 42155a35d1baadf047d80eeb4594c2c15cc17cad (diff) | |
download | mariadb-git-a171aa693e7f1c28ce67761621d032704fabde70.tar.gz |
Merge mysql.com:/home/jimw/my/mysql-4.1-14216
into mysql.com:/home/jimw/my/mysql-4.1-clean
sql/item.cc:
Auto merged
Diffstat (limited to 'sql/item.cc')
-rw-r--r-- | sql/item.cc | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sql/item.cc b/sql/item.cc index 60fa53bf798..f996e962cca 100644 --- a/sql/item.cc +++ b/sql/item.cc @@ -3275,8 +3275,11 @@ bool Item_type_holder::join_types(THD *thd, Item *item) { int delta1= max_length_orig - decimals_orig; int delta2= item->max_length - item->decimals; - max_length= min(max(delta1, delta2) + decimals, - (fld_type == MYSQL_TYPE_FLOAT) ? FLT_DIG+6 : DBL_DIG+7); + if (fld_type == MYSQL_TYPE_DECIMAL) + max_length= max(delta1, delta2) + decimals; + else + max_length= min(max(delta1, delta2) + decimals, + (fld_type == MYSQL_TYPE_FLOAT) ? FLT_DIG+6 : DBL_DIG+7); } else max_length= (fld_type == MYSQL_TYPE_FLOAT) ? FLT_DIG+6 : DBL_DIG+7; |