diff options
author | unknown <monty@mashka.mysql.fi> | 2003-01-29 18:56:34 +0200 |
---|---|---|
committer | unknown <monty@mashka.mysql.fi> | 2003-01-29 18:56:34 +0200 |
commit | bdfa549779d1871ee6b0934d67e782c2f8cf86d7 (patch) | |
tree | bbd18ba6ff992b36ac18095590748248e3a4b10b /sql/table.cc | |
parent | 72455300841e1b00c312c3a03ace3bcbd57a4d2f (diff) | |
download | mariadb-git-bdfa549779d1871ee6b0934d67e782c2f8cf86d7.tar.gz |
Fixed handling of lower_case_table_names in SHOW TABLE STATUS, mysql_list_fields() and mysql_table_dump().
This fixes some Errcode 13 errors on Windows when deleting tables.
sql/mysql_priv.h:
Moved lower case conversion of database names to check_db_name()
sql/mysqld.cc:
Fix to be able to use 4.0 error message files
sql/sql_db.cc:
Moved lower case conversion of database names to check_db_name()
sql/sql_parse.cc:
Moved lower case conversion of database names to check_db_name()
Added checking of lower_case_table_names for mysql_table_dump() and
mysql_list_fields()
sql/sql_show.cc:
Moved lower case conversion of database names to check_db_name()
sql/table.cc:
Convert database names to lower case in check_db-name() if --lower-case-table-names is used.
Diffstat (limited to 'sql/table.cc')
-rw-r--r-- | sql/table.cc | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/sql/table.cc b/sql/table.cc index e0f5edbf262..3afadec3801 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -1045,9 +1045,29 @@ char *get_field(MEM_ROOT *mem, TABLE *table, uint fieldnr) return to; } -bool check_db_name(const char *name) + +/* + Check if database name is valid + + SYNPOSIS + check_db_name() + name Name of database + + NOTES + If lower_case_table_names is set then database is converted to lower case + + RETURN + 0 ok + 1 error +*/ + +bool check_db_name(char *name) { - const char *start=name; + char *start=name; + + if (lower_case_table_names) + casedn_str(name); + while (*name) { #if defined(USE_MB) && defined(USE_MB_IDENT) |