summaryrefslogtreecommitdiff
path: root/myisam
diff options
context:
space:
mode:
authorunknown <istruewing@chilla.local>2006-09-28 11:41:38 +0200
committerunknown <istruewing@chilla.local>2006-09-28 11:41:38 +0200
commit24a1e6f60504146789fba904ab93528bbc3b477e (patch)
tree02636356530231af348aff8b278aa29ca087f0ff /myisam
parentac746932e8e8505e33bf148234ba2b9d53e8b8b9 (diff)
downloadmariadb-git-24a1e6f60504146789fba904ab93528bbc3b477e.tar.gz
Bug#22384 - DELETE FROM table causes "Incorrect key file for table"
Deletes on a big index could crash the index when it needs to shrink. Put a forgotten negation operator in. No test case. It is too big for the test suite. And it does not work with 4.0, only with higher versions. It is attached to the bug report. myisam/mi_delete.c: Bug#22384 - DELETE FROM table causes "Incorrect key file for table" Put a negation operator ('!') before _mi_get_last_key() in del(). It returns NULL on error, non-NULL on success.
Diffstat (limited to 'myisam')
-rw-r--r--myisam/mi_delete.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/myisam/mi_delete.c b/myisam/mi_delete.c
index 6f94e3c4256..2c7e2b28a3d 100644
--- a/myisam/mi_delete.c
+++ b/myisam/mi_delete.c
@@ -348,7 +348,7 @@ static int del(register MI_INFO *info, register MI_KEYDEF *keyinfo, uchar *key,
else
{
DBUG_PRINT("test",("Inserting of key when deleting"));
- if (_mi_get_last_key(info,keyinfo,leaf_buff,keybuff,endpos,
+ if (!_mi_get_last_key(info,keyinfo,leaf_buff,keybuff,endpos,
&tmp))
goto err;
ret_value=_mi_insert(info,keyinfo,key,leaf_buff,endpos,keybuff,