summaryrefslogtreecommitdiff
path: root/myisam/rt_index.c
diff options
context:
space:
mode:
authorram@mysql.r18.ru <>2003-02-20 16:44:34 +0400
committerram@mysql.r18.ru <>2003-02-20 16:44:34 +0400
commitc0d7208413199854197000292dc696f7fd3b2d99 (patch)
treed797c29b91732de1b2965d5b89ed689828647cdd /myisam/rt_index.c
parente9244b21b52d494d0ad0fb6b54d5bf9aaeda3de2 (diff)
downloadmariadb-git-c0d7208413199854197000292dc696f7fd3b2d99.tar.gz
Bug fix: we should not use info->buff for searching after we found last key in page
Diffstat (limited to 'myisam/rt_index.c')
-rw-r--r--myisam/rt_index.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/myisam/rt_index.c b/myisam/rt_index.c
index ac436245c0f..5173cac562c 100644
--- a/myisam/rt_index.c
+++ b/myisam/rt_index.c
@@ -115,7 +115,6 @@ static int rtree_find_req(MI_INFO *info, MI_KEYDEF *keyinfo, uint search_flag, u
info->lastpos = _mi_dpos(info, 0, after_key);
info->lastkey_length = k_len + info->s->base.rec_reflength;
memcpy(info->lastkey, k, info->lastkey_length);
-
info->rtree_recursion_depth = level;
*saved_key = k - page_buf;
@@ -126,6 +125,10 @@ static int rtree_find_req(MI_INFO *info, MI_KEYDEF *keyinfo, uint search_flag, u
info->int_maxpos = rt_PAGE_END(info->buff);
info->buff_used = 0;
}
+ else
+ {
+ info->buff_used = 1;
+ }
res = 0;
goto ok;
@@ -309,6 +312,10 @@ static int rtree_get_req(MI_INFO *info, MI_KEYDEF *keyinfo, uint key_length,
info->int_maxpos = rt_PAGE_END(info->buff);
info->buff_used = 0;
}
+ else
+ {
+ info->buff_used = 1;
+ }
res = 0;
goto ok;