From 76c982ea9288bdc55746b63d03ff82d6a89f02ec Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 4 Dec 2002 20:51:18 +0200 Subject: A fix for double free'd pointer bug ... BitKeeper/etc/ignore: Added innobase/stamp-h1 stamp-h1 to the ignore list --- sql/sql_table.cc | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'sql/sql_table.cc') diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 0a09b6232e8..ec866b927e6 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -1528,8 +1528,14 @@ int mysql_alter_table(THD *thd,char *new_db, char *new_name, /* We changed a temporary table */ if (error) { + /* + * The following function call will also free a + * new_table pointer. + * Therefore, here new_table pointer is not free'd as it is + * free'd in close_temporary() which is called by by the + * close_temporary_table() function. + */ close_temporary_table(thd,new_db,tmp_name); - my_free((gptr) new_table,MYF(0)); goto err; } /* Close lock if this is a transactional table */ -- cgit v1.2.1 From ada3e325457bd2796c355c59cfdc179e3feeb16b Mon Sep 17 00:00:00 2001 From: unknown Date: Wed, 4 Dec 2002 21:39:15 +0200 Subject: some code cleanup sql/sql_table.cc: code cleanup --- sql/sql_table.cc | 1 - 1 file changed, 1 deletion(-) (limited to 'sql/sql_table.cc') diff --git a/sql/sql_table.cc b/sql/sql_table.cc index ec866b927e6..e2fa8bc00d5 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -1848,7 +1848,6 @@ copy_data_between_tables(TABLE *from,TABLE *to, if (to->file->external_lock(thd,F_UNLCK)) error=1; err: - tmp_error = ha_recovery_logging(thd,TRUE); free_io_cache(from); *copied= found_count; *deleted=delete_count; -- cgit v1.2.1