summaryrefslogtreecommitdiff
path: root/sql/sp.cc
diff options
context:
space:
mode:
authorunknown <holyfoot/hf@hfmain.(none)>2007-04-07 14:59:53 +0500
committerunknown <holyfoot/hf@hfmain.(none)>2007-04-07 14:59:53 +0500
commit023ae2a040e43f40aab2bd40311c84e45bee97ff (patch)
tree20ab7d376b5edd5f5fcc4004f18c43aadaf05b77 /sql/sp.cc
parentbe3bc128abb09641f0d03216101c4d6938af4245 (diff)
parent795121926ef797fd9988ee65b97b16af0ace9af8 (diff)
downloadmariadb-git-023ae2a040e43f40aab2bd40311c84e45bee97ff.tar.gz
Merge bk@192.168.21.1:mysql-5.1-opt
into mysql.com:/d2/hf/mrg/mysql-5.1-opt client/mysqldump.c: Auto merged mysql-test/r/rpl_packet.result: Auto merged mysql-test/r/sp.result: Auto merged mysql-test/t/rpl_packet.test: Auto merged sql/field.cc: Auto merged sql/mysql_priv.h: Auto merged sql/mysqld.cc: Auto merged sql/sp.cc: Auto merged sql/sp_head.cc: Auto merged sql/sp_head.h: Auto merged sql/sql_partition.cc: Auto merged sql/sql_select.cc: Auto merged sql/sql_show.cc: Auto merged sql/sql_table.cc: Auto merged sql/share/errmsg.txt: Auto merged sql/sql_yacc.yy: Auto merged sql/table.cc: Auto merged storage/innobase/handler/ha_innodb.cc: Auto merged mysql-test/r/create.result: SCCS merged mysql-test/t/create.test: merging mysql-test/t/disabled.def: merging sql/events.cc: merging sql/sql_parse.cc: SCCS merged
Diffstat (limited to 'sql/sp.cc')
-rw-r--r--sql/sp.cc22
1 files changed, 10 insertions, 12 deletions
diff --git a/sql/sp.cc b/sql/sp.cc
index 8ede0801d6d..a59e3507eac 100644
--- a/sql/sp.cc
+++ b/sql/sp.cc
@@ -682,15 +682,15 @@ struct st_used_field
static struct st_used_field init_fields[]=
{
- { "Db", NAME_LEN, MYSQL_TYPE_STRING, 0},
- { "Name", NAME_LEN, MYSQL_TYPE_STRING, 0},
- { "Type", 9, MYSQL_TYPE_STRING, 0},
- { "Definer", 77, MYSQL_TYPE_STRING, 0},
- { "Modified", 0, MYSQL_TYPE_TIMESTAMP, 0},
- { "Created", 0, MYSQL_TYPE_TIMESTAMP, 0},
- { "Security_type", 1, MYSQL_TYPE_STRING, 0},
- { "Comment", NAME_LEN, MYSQL_TYPE_STRING, 0},
- { 0, 0, MYSQL_TYPE_STRING, 0}
+ { "Db", NAME_CHAR_LEN, MYSQL_TYPE_STRING, 0},
+ { "Name", NAME_CHAR_LEN, MYSQL_TYPE_STRING, 0},
+ { "Type", 9, MYSQL_TYPE_STRING, 0},
+ { "Definer", 77, MYSQL_TYPE_STRING, 0},
+ { "Modified", 0, MYSQL_TYPE_TIMESTAMP, 0},
+ { "Created", 0, MYSQL_TYPE_TIMESTAMP, 0},
+ { "Security_type", 1, MYSQL_TYPE_STRING, 0},
+ { "Comment", NAME_CHAR_LEN, MYSQL_TYPE_STRING, 0},
+ { 0, 0, MYSQL_TYPE_STRING, 0}
};
@@ -1598,10 +1598,8 @@ sp_cache_routines_and_add_tables_aux(THD *thd, LEX *lex,
rest of the server checks agains NAME_LEN bytes and not chars.
Hence, the overrun happens only if the name is in length > 32 and
uses multibyte (cyrillic, greek, etc.)
-
- !! Change 3 with SYSTEM_CHARSET_MBMAXLEN when it's defined.
*/
- char n[NAME_LEN*3*2+2];
+ char n[NAME_LEN*2+2];
/* m_qname.str is not always \0 terminated */
memcpy(n, name.m_qname.str, name.m_qname.length);