595
595
#define FIXED_VARS_SIZE (sizeof(fixed_vars) / sizeof(SHOW_VAR))
596
596
static SHOW_VAR fixed_vars[]= {
597
597
{"back_log", (char*) &back_log, SHOW_LONG},
598
{"character_sets_dir", mysql_charsets_dir, SHOW_CHAR},
599
598
{"init_file", (char*) &opt_init_file, SHOW_CHAR_PTR},
600
599
{"language", language, SHOW_CHAR},
601
600
#ifdef HAVE_MLOCKALL
842
841
LEX_STRING *base __attribute__((unused)))
845
String tmp(buff, sizeof(buff), &my_charset_latin1);
844
String tmp(buff, sizeof(buff), &my_charset_utf8_general_ci);
847
846
ulong val= *value;
1718
1717
const char *new_name;
1721
static my_old_conv old_conv[]=
1723
{ "cp1251_koi8" , "cp1251" },
1724
{ "cp1250_latin2" , "cp1250" },
1725
{ "kam_latin2" , "keybcs2" },
1726
{ "mac_latin2" , "MacRoman" },
1727
{ "macce_latin2" , "MacCE" },
1728
{ "pc2_latin2" , "pclatin2" },
1729
{ "vga_latin2" , "pclatin1" },
1730
{ "koi8_cp1251" , "koi8r" },
1731
{ "win1251ukr_koi8_ukr" , "win1251ukr" },
1732
{ "koi8_ukr_win1251ukr" , "koi8u" },
1736
const CHARSET_INFO *get_old_charset_by_name(const char *name)
1740
for (conv= old_conv; conv->old_name; conv++)
1742
if (!my_strcasecmp(&my_charset_latin1, name, conv->old_name))
1743
return get_charset_by_csname(conv->new_name, MY_CS_PRIMARY, MYF(0));
1749
1720
bool sys_var_collation::check(THD *thd __attribute__((unused)),
1802
else if (!(tmp=get_charset_by_csname(res->c_ptr(),MY_CS_PRIMARY,MYF(0))) &&
1803
!(tmp=get_old_charset_by_name(res->c_ptr())))
1773
else if (!(tmp= get_charset_by_csname(res->c_ptr(),MY_CS_PRIMARY,MYF(0))))
1805
1775
my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), res->c_ptr());
2307
2277
LEX_STRING *base __attribute__((unused)))
2309
2279
char buff[256];
2310
String tmp(buff, sizeof(buff), &my_charset_latin1);
2280
String tmp(buff, sizeof(buff), &my_charset_utf8_general_ci);
2312
2282
ulong val= *value;
2434
2404
bool sys_var_thd_time_zone::check(THD *thd, set_var *var)
2436
2406
char buff[MAX_TIME_ZONE_NAME_LENGTH];
2437
String str(buff, sizeof(buff), &my_charset_latin1);
2407
String str(buff, sizeof(buff), &my_charset_utf8_general_ci);
2438
2408
String *res= var->value->val_str(&str);
2440
2410
if (!(var->save_result.time_zone= my_tz_find(thd, res)))
2494
2464
if (default_tz_name)
2496
String str(default_tz_name, &my_charset_latin1);
2466
String str(default_tz_name, &my_charset_utf8_general_ci);
2498
2468
We are guaranteed to find this time zone since its existence
2499
2469
is checked during start-up.
2573
2543
else // STRING_RESULT
2576
String str(buff, sizeof(buff), &my_charset_latin1), *res;
2546
String str(buff, sizeof(buff), &my_charset_utf8_general_ci), *res;
2577
2547
if (!(res=var->value->val_str(&str)))
2579
2549
my_error(ER_WRONG_VALUE_FOR_VAR, MYF(0), name, "NULL");
3234
3204
char buff[STRING_BUFFER_USUAL_SIZE];
3235
3205
const char *value;
3236
String str(buff, sizeof(buff), &my_charset_latin1), *res;
3206
String str(buff, sizeof(buff), &my_charset_utf8_general_ci), *res;
3238
3208
var->save_result.plugin= NULL;
3239
3209
if (var->value->result_type() == STRING_RESULT)
3317
3287
symbolic_mode_representation(THD *thd, uint64_t val, LEX_STRING *rep)
3319
3289
char buff[STRING_BUFFER_USUAL_SIZE*8];
3320
String tmp(buff, sizeof(buff), &my_charset_latin1);
3290
String tmp(buff, sizeof(buff), &my_charset_utf8_general_ci);