summaryrefslogtreecommitdiff
path: root/mysys
diff options
context:
space:
mode:
authorunknown <svoj@april.(none)>2006-05-03 16:36:00 +0500
committerunknown <svoj@april.(none)>2006-05-03 16:36:00 +0500
commit8cec2f3e20e26d3edfd3650d65ffc694e0be66e5 (patch)
tree6de1e8dc093f205c40b009a87a7df3c0222fbeb0 /mysys
parentaa4ad136943136ab5304ba7298aece8ef53e406c (diff)
parent4441e34e38acc430a229844a85756891221068a4 (diff)
downloadmariadb-git-8cec2f3e20e26d3edfd3650d65ffc694e0be66e5.tar.gz
Merge april.(none):/home/svoj/devel/mysql/BUG18160/mysql-5.0
into april.(none):/home/svoj/devel/mysql/BUG17810/mysql-5.0
Diffstat (limited to 'mysys')
-rw-r--r--mysys/tree.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/mysys/tree.c b/mysys/tree.c
index 1780913961e..0c9c04919b0 100644
--- a/mysys/tree.c
+++ b/mysys/tree.c
@@ -271,7 +271,7 @@ TREE_ELEMENT *tree_insert(TREE *tree, void *key, uint key_size,
return element;
}
-int tree_delete(TREE *tree, void *key, void *custom_arg)
+int tree_delete(TREE *tree, void *key, uint key_size, void *custom_arg)
{
int cmp,remove_colour;
TREE_ELEMENT *element,***parent, ***org_parent, *nod;
@@ -326,8 +326,7 @@ int tree_delete(TREE *tree, void *key, void *custom_arg)
rb_delete_fixup(tree,parent);
if (tree->free)
(*tree->free)(ELEMENT_KEY(tree,element), free_free, tree->custom_arg);
- /* This doesn't include key_size, but better than nothing */
- tree->allocated-= sizeof(TREE_ELEMENT)+tree->size_of_element;
+ tree->allocated-= sizeof(TREE_ELEMENT) + tree->size_of_element + key_size;
my_free((gptr) element,MYF(0));
tree->elements_in_tree--;
return 0;