summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <Sinisa@sinisa.nasamreza.org>2002-12-04 20:52:42 +0200
committerunknown <Sinisa@sinisa.nasamreza.org>2002-12-04 20:52:42 +0200
commitc151ea1f129b361f906131d8867c7472f6ec2970 (patch)
treee6f08c20d1d92e984a2188cfbf663c52f1570b88 /sql
parentad6e0804017b2a54a33aa643efe2bb374c0a95b6 (diff)
parent76c982ea9288bdc55746b63d03ff82d6a89f02ec (diff)
downloadmariadb-git-c151ea1f129b361f906131d8867c7472f6ec2970.tar.gz
Merge sinisa@work.mysql.com:/home/bk/mysql
into sinisa.nasamreza.org:/mnt/work/mysql
Diffstat (limited to 'sql')
-rw-r--r--sql/mysqld.cc2
-rw-r--r--sql/sql_show.cc3
-rw-r--r--sql/sql_table.cc8
-rw-r--r--sql/structs.h2
4 files changed, 12 insertions, 3 deletions
diff --git a/sql/mysqld.cc b/sql/mysqld.cc
index f67fa8afd8c..6aa41f9f800 100644
--- a/sql/mysqld.cc
+++ b/sql/mysqld.cc
@@ -3110,7 +3110,7 @@ struct show_var_st init_vars[]= {
#endif
{"interactive_timeout", (char*) &net_interactive_timeout, SHOW_LONG},
{"join_buffer_size", (char*) &join_buff_size, SHOW_LONG},
- {"key_buffer_size", (char*) &keybuff_size, SHOW_LONG},
+ {"key_buffer_size", (char*) &keybuff_size, SHOW_LONG_AS_LONGLONG},
{"language", language, SHOW_CHAR},
{"large_files_support", (char*) &opt_large_files, SHOW_BOOL},
#ifdef HAVE_MLOCKALL
diff --git a/sql/sql_show.cc b/sql/sql_show.cc
index 028d6b055ff..12979f77e56 100644
--- a/sql/sql_show.cc
+++ b/sql/sql_show.cc
@@ -1145,6 +1145,9 @@ int mysqld_show(THD *thd, const char *wild, show_var_st *variables)
switch (variables[i].type){
case SHOW_LONG:
case SHOW_LONG_CONST:
+ net_store_data(&packet2,(uint32) *(ulong*) variables[i].value);
+ break;
+ case SHOW_LONG_AS_LONGLONG:
net_store_data(&packet2,(longlong) *(ulong*) variables[i].value);
break;
case SHOW_BOOL:
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 */
diff --git a/sql/structs.h b/sql/structs.h
index 36f503312c0..90924b842d6 100644
--- a/sql/structs.h
+++ b/sql/structs.h
@@ -125,7 +125,7 @@ typedef struct {
enum SHOW_TYPE { SHOW_LONG,SHOW_CHAR,SHOW_INT,SHOW_CHAR_PTR,SHOW_BOOL,
SHOW_MY_BOOL,SHOW_OPENTABLES,SHOW_STARTTIME,SHOW_QUESTION,
- SHOW_LONG_CONST, SHOW_INT_CONST, SHOW_HAVE};
+ SHOW_LONG_CONST, SHOW_INT_CONST, SHOW_HAVE, SHOW_LONG_AS_LONGLONG};
enum SHOW_COMP_OPTION { SHOW_OPTION_YES, SHOW_OPTION_NO, SHOW_OPTION_DISABLED};