diff options
author | monty@donna.mysql.fi <> | 2001-04-19 20:41:19 +0300 |
---|---|---|
committer | monty@donna.mysql.fi <> | 2001-04-19 20:41:19 +0300 |
commit | a94ba10f8db7556ac459e3b6d7c1ab990f47ec63 (patch) | |
tree | b9a43fcdfcccfe2291c2db879da2011530b4339f /sql/sql_select.cc | |
parent | 3876d83ec1a13fc310dc1839176f9d286a384ded (diff) | |
download | mariadb-git-a94ba10f8db7556ac459e3b6d7c1ab990f47ec63.tar.gz |
Fix for BDB and LOCK TABLES
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r-- | sql/sql_select.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc index 77cf20f813a..00a41a851b5 100644 --- a/sql/sql_select.cc +++ b/sql/sql_select.cc @@ -2525,7 +2525,6 @@ join_free(JOIN *join) delete tab->select; delete tab->quick; x_free(tab->cache.buff); - end_read_record(&tab->read_record); if (tab->table) { if (tab->table->key_read) @@ -2533,8 +2532,11 @@ join_free(JOIN *join) tab->table->key_read=0; tab->table->file->extra(HA_EXTRA_NO_KEYREAD); } - tab->table->file->index_end(); + /* Don't free index if we are using read_record */ + if (!tab->read_record.table) + tab->table->file->index_end(); } + end_read_record(&tab->read_record); } join->table=0; } |