summaryrefslogtreecommitdiff
path: root/extra/replace.c
diff options
context:
space:
mode:
authormonty@mysql.com <>2004-05-05 17:05:24 +0300
committermonty@mysql.com <>2004-05-05 17:05:24 +0300
commitd21d49a32a1689d2c486a449574e120d7a2f60c4 (patch)
tree3238bd16530e02dbfef96513749a73b7294880f8 /extra/replace.c
parent104fdf607d312bb13f24063d28d993243bf24ca2 (diff)
parente51887b05082622a1882217b7f8ec8ae7f6b4598 (diff)
downloadmariadb-git-d21d49a32a1689d2c486a449574e120d7a2f60c4.tar.gz
Merge with 4.0.19
Diffstat (limited to 'extra/replace.c')
-rw-r--r--extra/replace.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/extra/replace.c b/extra/replace.c
index a44c33a4694..5a086e5ca9c 100644
--- a/extra/replace.c
+++ b/extra/replace.c
@@ -279,8 +279,10 @@ int insert_pointer_name(reg1 POINTER_ARRAY *pa,my_string name)
length=(uint) strlen(name)+1;
if (pa->length+length >= pa->max_length)
{
+ pa->max_length=(pa->length+length+MALLOC_OVERHEAD+PS_MALLOC-1)/PS_MALLOC;
+ pa->max_length=pa->max_length*PS_MALLOC-MALLOC_OVERHEAD;
if (!(new_pos= (byte*) my_realloc((gptr) pa->str,
- (uint) (pa->max_length+PS_MALLOC),
+ (uint) pa->max_length,
MYF(MY_WME))))
DBUG_RETURN(1);
if (new_pos != pa->str)
@@ -291,7 +293,6 @@ int insert_pointer_name(reg1 POINTER_ARRAY *pa,my_string name)
char*);
pa->str=new_pos;
}
- pa->max_length+=PS_MALLOC;
}
if (pa->typelib.count >= pa->max_count-1)
{