diff options
author | unknown <jimw@mysql.com> | 2005-09-02 12:42:00 -0700 |
---|---|---|
committer | unknown <jimw@mysql.com> | 2005-09-02 12:42:00 -0700 |
commit | 79ae20bc3a4a4353e1a8b2dd54cbf9eedc2741c4 (patch) | |
tree | f19bfa5806b4eb963afec8d537624bfb9ade439c /sql | |
parent | 196862dfd94a749ff703e212dc5b62d19dce451d (diff) | |
parent | cbb1da77cf096e4746f0a28ec3b6125133cf9c4b (diff) | |
download | mariadb-git-79ae20bc3a4a4353e1a8b2dd54cbf9eedc2741c4.tar.gz |
Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into mysql.com:/home/jimw/my/mysql-5.0-clean
mysql-test/t/variables.test:
Auto merged
sql/set_var.cc:
Auto merged
mysql-test/r/variables.result:
Resolve conflict
scripts/mysqld_multi.sh:
Resolve conflict
Diffstat (limited to 'sql')
-rw-r--r-- | sql/set_var.cc | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/sql/set_var.cc b/sql/set_var.cc index 26912becc81..ea4c08cea27 100644 --- a/sql/set_var.cc +++ b/sql/set_var.cc @@ -1725,11 +1725,17 @@ Item *sys_var::item(THD *thd, enum_var_type var_type, LEX_STRING *base) return new Item_int((int32) *(my_bool*) value_ptr(thd, var_type, base),1); case SHOW_CHAR: { - Item_string *tmp; + Item *tmp; pthread_mutex_lock(&LOCK_global_system_variables); char *str= (char*) value_ptr(thd, var_type, base); - tmp= new Item_string(str, strlen(str), - system_charset_info, DERIVATION_SYSCONST); + if (str) + tmp= new Item_string(str, strlen(str), + system_charset_info, DERIVATION_SYSCONST); + else + { + tmp= new Item_null(); + tmp->collation.set(system_charset_info, DERIVATION_SYSCONST); + } pthread_mutex_unlock(&LOCK_global_system_variables); return tmp; } @@ -2019,7 +2025,7 @@ byte *sys_var_character_set::value_ptr(THD *thd, enum_var_type type, LEX_STRING *base) { CHARSET_INFO *cs= ci_ptr(thd,type)[0]; - return cs ? (byte*) cs->csname : (byte*) "NULL"; + return cs ? (byte*) cs->csname : (byte*) NULL; } |