diff options
author | unknown <gluh@mysql.com/gluh.(none)> | 2006-09-07 15:17:46 +0500 |
---|---|---|
committer | unknown <gluh@mysql.com/gluh.(none)> | 2006-09-07 15:17:46 +0500 |
commit | 146049d2e491e2c6253aa7352bb2dfb1180f4489 (patch) | |
tree | c5a1c6b7ac37be18a4aeb0fe3100047715ecaf87 /sql | |
parent | 979d9c8f8056f77483af2380aaa819f6665c98cc (diff) | |
parent | ddb9f8668fa10166e4ffb761dc54a25a007c5bfa (diff) | |
download | mariadb-git-146049d2e491e2c6253aa7352bb2dfb1180f4489.tar.gz |
Merge mysql.com:/home/gluh/MySQL/Merge/4.1-merge
into mysql.com:/home/gluh/MySQL/Merge/5.0
include/mysql_com.h:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.cc:
Auto merged
mysql-test/r/ctype_utf8.result:
manual merge
sql/sql_acl.cc:
manual merge
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sql_parse.cc | 4 | ||||
-rw-r--r-- | sql/table.cc | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/sql/sql_parse.cc b/sql/sql_parse.cc index 2acbf18f1e6..bb969a77d89 100644 --- a/sql/sql_parse.cc +++ b/sql/sql_parse.cc @@ -1001,8 +1001,8 @@ static int check_connection(THD *thd) char *passwd= strend(user)+1; uint user_len= passwd - user - 1; char *db= passwd; - char db_buff[NAME_LEN+1]; // buffer to store db in utf8 - char user_buff[USERNAME_LENGTH+1]; // buffer to store user in utf8 + char db_buff[NAME_BYTE_LEN + 1]; // buffer to store db in utf8 + char user_buff[USERNAME_BYTE_LENGTH + 1]; // buffer to store user in utf8 uint dummy_errors; /* diff --git a/sql/table.cc b/sql/table.cc index 0a95461cf06..054736401ff 100644 --- a/sql/table.cc +++ b/sql/table.cc @@ -1592,7 +1592,7 @@ char *get_field(MEM_ROOT *mem, Field *field) bool check_db_name(char *name) { - char *start=name; + uint name_length= 0; // name length in symbols /* Used to catch empty names and names with end space */ bool last_char_is_space= TRUE; @@ -1609,6 +1609,7 @@ bool check_db_name(char *name) name+system_charset_info->mbmaxlen); if (len) { + name_length++; name += len; continue; } @@ -1616,12 +1617,13 @@ bool check_db_name(char *name) #else last_char_is_space= *name==' '; #endif + name_length++; if (*name == '/' || *name == '\\' || *name == FN_LIBCHAR || *name == FN_EXTCHAR) return 1; name++; } - return last_char_is_space || (uint) (name - start) > NAME_LEN; + return (last_char_is_space || name_length > NAME_LEN); } |