mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/bar/mysql-4.1.b12363 mysql-test/t/variables.test: Auto merged sql/set_var.cc: Auto merged mysql-test/r/variables.result: SCCS merged
This commit is contained in:
commit
3b077226c9
3 changed files with 23 additions and 4 deletions
|
@ -491,6 +491,11 @@ SHOW VARIABLES LIKE 'table_cache';
|
|||
Variable_name Value
|
||||
table_cache 1
|
||||
SET GLOBAL table_cache=DEFAULT;
|
||||
set character_set_results=NULL;
|
||||
select ifnull(@@character_set_results,"really null");
|
||||
ifnull(@@character_set_results,"really null")
|
||||
really null
|
||||
set names latin1;
|
||||
select @@have_innodb;
|
||||
@@have_innodb
|
||||
#
|
||||
|
|
|
@ -380,6 +380,14 @@ SET GLOBAL table_cache=-1;
|
|||
SHOW VARIABLES LIKE 'table_cache';
|
||||
SET GLOBAL table_cache=DEFAULT;
|
||||
|
||||
#
|
||||
# Bugs12363: character_set_results is nullable,
|
||||
# but value_ptr returns string "NULL"
|
||||
#
|
||||
set character_set_results=NULL;
|
||||
select ifnull(@@character_set_results,"really null");
|
||||
set names latin1;
|
||||
|
||||
# End of 4.1 tests
|
||||
|
||||
#
|
||||
|
|
|
@ -1602,11 +1602,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;
|
||||
}
|
||||
|
@ -1896,7 +1902,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;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue