Commit 4efff5b3 authored by unknown's avatar unknown

Fix of the #173 bug

(Truncating of Replace result)


sql/item_strfunc.cc:
  max_length for Replace function was counted in wrong way
parent 0737f4ad
...@@ -813,8 +813,8 @@ void Item_func_replace::fix_length_and_dec() ...@@ -813,8 +813,8 @@ void Item_func_replace::fix_length_and_dec()
int diff=(int) (args[2]->max_length - args[1]->max_length); int diff=(int) (args[2]->max_length - args[1]->max_length);
if (diff > 0 && args[1]->max_length) if (diff > 0 && args[1]->max_length)
{ // Calculate of maxreplaces { // Calculate of maxreplaces
max_length= max_length/args[1]->max_length; int max_substrs= max_length/args[1]->max_length;
max_length= (max_length+1)*(uint) diff; max_length+= max_substrs*(uint) diff;
} }
if (max_length > MAX_BLOB_WIDTH) if (max_length > MAX_BLOB_WIDTH)
{ {
......
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