summaryrefslogtreecommitdiff
path: root/strings/ctype-simple.c
diff options
context:
space:
mode:
authorAlexander Barkov <bar@mariadb.org>2016-03-31 11:04:48 +0400
committerAlexander Barkov <bar@mariadb.org>2016-03-31 11:04:48 +0400
commit1d73005bf357a607423f858482c52ecb4712607d (patch)
tree974a3bbb7f8ee2ef7c0b15aa16aed03baa18926a /strings/ctype-simple.c
parent282497dd6d1049b4fb963641504c2733752845a7 (diff)
downloadmariadb-git-1d73005bf357a607423f858482c52ecb4712607d.tar.gz
MDEV-8360 Clean-up CHARSET_INFO: strnncollsp: diff_if_only_endspace_difference
- Removing the "diff_if_only_endspace_difference" argument from MY_COLLATION_HANDLER::strnncollsp(), my_strnncollsp_simple(), as well as in the function template MY_FUNCTION_NAME(strnncollsp) in strcoll.ic - Removing the "diff_if_only_space_different" from ha_compare_text(), hp_rec_key_cmp(). - Adding a new function my_strnncollsp_padspace_bin() and reusing it instead of duplicate code pieces in my_strnncollsp_8bit_bin(), my_strnncollsp_latin1_de(), my_strnncollsp_tis620(), my_strnncollsp_utf8_cs(). - Adding more tests for better coverage of the trailing space handling. - Removing the unused definition of HA_END_SPACE_ARE_EQUAL
Diffstat (limited to 'strings/ctype-simple.c')
-rw-r--r--strings/ctype-simple.c12
1 files changed, 1 insertions, 11 deletions
diff --git a/strings/ctype-simple.c b/strings/ctype-simple.c
index b205b1abc20..5e5a345a638 100644
--- a/strings/ctype-simple.c
+++ b/strings/ctype-simple.c
@@ -128,9 +128,6 @@ int my_strnncoll_simple(CHARSET_INFO * cs, const uchar *s, size_t slen,
a_length Length of 'a'
b Second string to compare
b_length Length of 'b'
- diff_if_only_endspace_difference
- Set to 1 if the strings should be regarded as different
- if they only difference in end space
IMPLEMENTATION
If one string is shorter as the other, then we space extend the other
@@ -149,17 +146,12 @@ int my_strnncoll_simple(CHARSET_INFO * cs, const uchar *s, size_t slen,
*/
int my_strnncollsp_simple(CHARSET_INFO * cs, const uchar *a, size_t a_length,
- const uchar *b, size_t b_length,
- my_bool diff_if_only_endspace_difference)
+ const uchar *b, size_t b_length)
{
const uchar *map= cs->sort_order, *end;
size_t length;
int res;
-#ifndef VARCHAR_WITH_DIFF_ENDSPACE_ARE_DIFFERENT_FOR_UNIQUE
- diff_if_only_endspace_difference= 0;
-#endif
-
end= a + (length= MY_MIN(a_length, b_length));
while (a < end)
{
@@ -170,8 +162,6 @@ int my_strnncollsp_simple(CHARSET_INFO * cs, const uchar *a, size_t a_length,
if (a_length != b_length)
{
int swap= 1;
- if (diff_if_only_endspace_difference)
- res= 1; /* Assume 'a' is bigger */
/*
Check the next not space character of the longer key. If it's < ' ',
then it's smaller than the other key.