summaryrefslogtreecommitdiff
path: root/sql/sql_insert.cc
diff options
context:
space:
mode:
authormonty@mysql.com <>2004-10-27 21:56:17 +0300
committermonty@mysql.com <>2004-10-27 21:56:17 +0300
commit5b29f59aa8fe3f66d0f884f0e567891d5d75d7bd (patch)
tree66328d72ad0e0bfc349cb02b61f845b1c7f2949a /sql/sql_insert.cc
parent3493f54a5ed60e838e7bd6b428638a43da341e47 (diff)
downloadmariadb-git-5b29f59aa8fe3f66d0f884f0e567891d5d75d7bd.tar.gz
Fixed access to freed memory
Diffstat (limited to 'sql/sql_insert.cc')
-rw-r--r--sql/sql_insert.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/sql/sql_insert.cc b/sql/sql_insert.cc
index 2c48d1dca8f..648549ca3ac 100644
--- a/sql/sql_insert.cc
+++ b/sql/sql_insert.cc
@@ -1681,9 +1681,10 @@ bool select_create::send_eof()
*/
if (!table->tmp_table)
{
+ ulong version= table->version;
hash_delete(&open_cache,(byte*) table);
/* Tell threads waiting for refresh that something has happened */
- if (table->version != refresh_version)
+ if (version != refresh_version)
VOID(pthread_cond_broadcast(&COND_refresh));
}
lock=0;
@@ -1707,11 +1708,12 @@ void select_create::abort()
enum db_type table_type=table->db_type;
if (!table->tmp_table)
{
+ ulong version= table->version;
hash_delete(&open_cache,(byte*) table);
if (!create_info->table_existed)
quick_rm_table(table_type, db, name);
/* Tell threads waiting for refresh that something has happened */
- if (table->version != refresh_version)
+ if (version != refresh_version)
VOID(pthread_cond_broadcast(&COND_refresh));
}
else if (!create_info->table_existed)