diff options
author | unknown <serg@serg.mylan> | 2005-01-24 18:38:46 +0100 |
---|---|---|
committer | unknown <serg@serg.mylan> | 2005-01-24 18:38:46 +0100 |
commit | 7109999b92ec8541a61ca5babc5b06f4315478a8 (patch) | |
tree | c99802bffaa382d36029fb06f8af45713ab9b52f /mysys/mf_keycaches.c | |
parent | ba3b78d968c56806d8606e47bc4555a8436004c6 (diff) | |
download | mariadb-git-7109999b92ec8541a61ca5babc5b06f4315478a8.tar.gz |
remove the entry from the list, before freeing
Diffstat (limited to 'mysys/mf_keycaches.c')
-rw-r--r-- | mysys/mf_keycaches.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mysys/mf_keycaches.c b/mysys/mf_keycaches.c index fee3096de52..38fef31fdd4 100644 --- a/mysys/mf_keycaches.c +++ b/mysys/mf_keycaches.c @@ -275,7 +275,11 @@ static void safe_hash_change(SAFE_HASH *hash, byte *old_data, byte *new_data) if (entry->data == old_data) { if (new_data == hash->default_value) + { + if ((*entry->prev= entry->next)) + entry->next->prev= entry->prev; hash_delete(&hash->hash, (byte*) entry); + } else entry->data= new_data; } |