summaryrefslogtreecommitdiff
path: root/strings/conf_to_src.c
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.org>2016-09-03 09:05:56 +0400
committerAlexander Barkov <bar@mariadb.org>2016-09-03 09:05:56 +0400
commit1ca595fbf7d186bbe9f2f9896869b316d6e9567a (patch)
treeb6751102168660d7eaf923b001cb21d40975603b /strings/conf_to_src.c
parentaddb38f4763faa0378cd369106372a0eb0f0ee75 (diff)
downloadmariadb-git-1ca595fbf7d186bbe9f2f9896869b316d6e9567a.tar.gz
LDML refactoring for "MDEV-9711 NO PAD collations"
- Moving detection of the MY_CS_CSSORT, MY_CS_PUREASCII, MY_CS_NONASCII flags of loadable collations from add_collation() in mysys.c to my_cset_init_8bit() and my_coll_init_simple() in ctype-simple.c. - Adding tests that these flags are set properly for loadable collations - Moving LDML test related *.xml files from mysql-test/std_data/ to mysql-test/std_data/ldml/, as there will be more *.xml test files
Diffstat (limited to 'strings/conf_to_src.c')
-rw-r--r--strings/conf_to_src.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/strings/conf_to_src.c b/strings/conf_to_src.c
index 5b9793f388d..31093fe4230 100644
--- a/strings/conf_to_src.c
+++ b/strings/conf_to_src.c
@@ -193,25 +193,19 @@ static int my_read_charset_file(const char *filename)
return FALSE;
}
-static int
-is_case_sensitive(CHARSET_INFO *cs)
-{
- return (cs->sort_order &&
- cs->sort_order['A'] < cs->sort_order['a'] &&
- cs->sort_order['a'] < cs->sort_order['B']) ? 1 : 0;
-}
-
void dispcset(FILE *f,CHARSET_INFO *cs)
{
+ uint flags= my_8bit_charset_flags_from_data(cs) |
+ my_8bit_collation_flags_from_data(cs);
fprintf(f,"{\n");
fprintf(f," %d,%d,%d,\n",cs->number,0,0);
fprintf(f," MY_CS_COMPILED%s%s%s%s%s,\n",
cs->state & MY_CS_BINSORT ? "|MY_CS_BINSORT" : "",
cs->state & MY_CS_PRIMARY ? "|MY_CS_PRIMARY" : "",
- is_case_sensitive(cs) ? "|MY_CS_CSSORT" : "",
- my_charset_is_8bit_pure_ascii(cs) ? "|MY_CS_PUREASCII" : "",
- !my_charset_is_ascii_compatible(cs) ? "|MY_CS_NONASCII": "");
+ flags & MY_CS_CSSORT ? "|MY_CS_CSSORT" : "",
+ flags & MY_CS_PUREASCII ? "|MY_CS_PUREASCII" : "",
+ flags & MY_CS_NONASCII ? "|MY_CS_NONASCII" : "");
if (cs->name)
{