summaryrefslogtreecommitdiff
path: root/isam
diff options
context:
space:
mode:
Diffstat (limited to 'isam')
-rw-r--r--isam/_search.c2
-rw-r--r--isam/static.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/isam/_search.c b/isam/_search.c
index 445340a21d6..d5e145ae0bf 100644
--- a/isam/_search.c
+++ b/isam/_search.c
@@ -118,7 +118,7 @@ int _nisam_search(register N_INFO *info, register N_KEYDEF *keyinfo, uchar *key,
if ((nextflag & (SEARCH_SMALLER | SEARCH_LAST)) && flag != 0)
{
keypos=_nisam_get_last_key(info,keyinfo,buff,lastkey,keypos);
- if ((nextflag & SEARCH_LAST) &&
+ if (!(nextflag & SEARCH_SMALLER) &&
_nisam_key_cmp(keyinfo->seg, info->lastkey, key, key_len, SEARCH_FIND))
{
my_errno=HA_ERR_KEY_NOT_FOUND; /* Didn't find key */
diff --git a/isam/static.c b/isam/static.c
index 9c68a0cfdba..0a8dc809ad7 100644
--- a/isam/static.c
+++ b/isam/static.c
@@ -41,5 +41,5 @@ uint NEAR nisam_read_vec[]=
{
SEARCH_FIND, SEARCH_FIND | SEARCH_BIGGER, SEARCH_FIND | SEARCH_SMALLER,
SEARCH_NO_FIND | SEARCH_BIGGER, SEARCH_NO_FIND | SEARCH_SMALLER,
- SEARCH_FIND, SEARCH_LAST
+ SEARCH_FIND, SEARCH_LAST,SEARCH_LAST | SEARCH_SMALLER
};