summaryrefslogtreecommitdiff
path: root/storage/innobase/handler/ha_innodb.cc
diff options
context:
space:
mode:
Diffstat (limited to 'storage/innobase/handler/ha_innodb.cc')
-rw-r--r--storage/innobase/handler/ha_innodb.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index c9d9f663050..2dd0859d181 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -13497,11 +13497,12 @@ int ha_innobase::delete_table(const char *name)
if (table->is_temporary())
{
- dict_sys.remove(table, false, true);
dict_sys.unlock();
parent_trx->mod_tables.erase(table); /* CREATE...SELECT error handling */
btr_drop_temporary_table(*table);
- dict_mem_table_free(table);
+ dict_sys.lock(SRW_LOCK_CALL);
+ dict_sys.remove(table);
+ dict_sys.unlock();
DBUG_RETURN(0);
}