Commit 7d54b004 authored by jimw@mysql.com's avatar jimw@mysql.com

Bug #13975: "same string" + 0 has 2 different results

  The 'decimals' member of Item_func was being improperly initialized,
  which resulted in improper results when handling large numeric values.
parent 894092be
......@@ -1046,4 +1046,10 @@ cast(ltrim(' 20.06 ') as decimal(19,2))
select cast(rtrim(ltrim(' 20.06 ')) as decimal(19,2));
cast(rtrim(ltrim(' 20.06 ')) as decimal(19,2))
20.06
select conv("18383815659218730760",10,10) + 0;
conv("18383815659218730760",10,10) + 0
1.8383815659219e+19
select "18383815659218730760" + 0;
"18383815659218730760" + 0
1.8383815659219e+19
End of 5.0 tests
......@@ -698,4 +698,10 @@ select cast(rtrim(' 20.06 ') as decimal(19,2));
select cast(ltrim(' 20.06 ') as decimal(19,2));
select cast(rtrim(ltrim(' 20.06 ')) as decimal(19,2));
#
# Bug #13975: "same string" + 0 has 2 different results
#
select conv("18383815659218730760",10,10) + 0;
select "18383815659218730760" + 0;
--echo End of 5.0 tests
......@@ -542,7 +542,7 @@ class Item_func_conv :public Item_str_func
void fix_length_and_dec()
{
collation.set(default_charset());
decimals=0; max_length=64;
max_length= 64;
}
};
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment