diff options
author | monty@mysql.com <> | 2004-01-19 23:51:17 +0100 |
---|---|---|
committer | monty@mysql.com <> | 2004-01-19 23:51:17 +0100 |
commit | 0eb607006879210b04278d0a961e28e72616645d (patch) | |
tree | 98d19ab1ee2226dc59533f6531cb9b465784e3b3 /mysys | |
parent | f784f54c9c7d6dcf4ac50582a0532080079f4d5d (diff) | |
download | mariadb-git-0eb607006879210b04278d0a961e28e72616645d.tar.gz |
Code cleanup
Fixed bug in optimizer where it didn't choose right table order in some cases
Diffstat (limited to 'mysys')
-rw-r--r-- | mysys/charset.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/mysys/charset.c b/mysys/charset.c index f8c8237c88b..fec0778213f 100644 --- a/mysys/charset.c +++ b/mysys/charset.c @@ -533,14 +533,15 @@ static CHARSET_INFO *get_internal_charset(uint cs_number, myf flags) */ pthread_mutex_lock(&THR_LOCK_charset); - cs= all_charsets[cs_number]; - - if (cs && !(cs->state & MY_CS_COMPILED) && !(cs->state & MY_CS_LOADED)) + if ((cs= all_charsets[cs_number])) { - strxmov(get_charsets_dir(buf), cs->csname, ".xml", NullS); - my_read_charset_file(buf,flags); + if (!(cs->state & MY_CS_COMPILED) && !(cs->state & MY_CS_LOADED)) + { + strxmov(get_charsets_dir(buf), cs->csname, ".xml", NullS); + my_read_charset_file(buf,flags); + } + cs= (cs->state & MY_CS_AVAILABLE) ? cs : NULL; } - cs= (cs->state & MY_CS_AVAILABLE) ? cs : NULL; pthread_mutex_unlock(&THR_LOCK_charset); return cs; } |