diff options
author | Sergei Golubchik <sergii@pisem.net> | 2013-04-09 23:27:19 +0200 |
---|---|---|
committer | Sergei Golubchik <sergii@pisem.net> | 2013-04-09 23:27:19 +0200 |
commit | 7d3288129f6e5b52c7377ff68295f51606c7f002 (patch) | |
tree | 9f844bb427f6f945e97d54d3e4fb9f44bd181186 /sql/set_var.h | |
parent | eda4c51241b647094b727643e1aad4153c45d647 (diff) | |
download | mariadb-git-7d3288129f6e5b52c7377ff68295f51606c7f002.tar.gz |
create sys_var::val_str(), sys_var::val_int(), sys_var::val_real().
Change Item_func_get_system_var::val_xxx functions to use that.
mysql-test/t/variables.test:
@@GLOBAL.INIT_CONNECT is never NULL anymore. Nor it ever was.
It was a bug that empty string system variables appeared as NULL
in the *integer context* (but not in a string, real, or decimal context!)
Diffstat (limited to 'sql/set_var.h')
-rw-r--r-- | sql/set_var.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sql/set_var.h b/sql/set_var.h index f912c9fffad..6cb0cd33f87 100644 --- a/sql/set_var.h +++ b/sql/set_var.h @@ -108,6 +108,10 @@ public: bool set_default(THD *thd, enum_var_type type); bool update(THD *thd, set_var *var); + longlong val_int(bool *is_null, THD *thd, enum_var_type type, LEX_STRING *base); + String *val_str(String *str, THD *thd, enum_var_type type, LEX_STRING *base); + double val_real(bool *is_null, THD *thd, enum_var_type type, LEX_STRING *base); + SHOW_TYPE show_type() { return show_val_type; } int scope() const { return flags & SCOPE_MASK; } CHARSET_INFO *charset(THD *thd); |