1
0
mirror of https://github.com/MariaDB/server.git synced 2026-01-06 05:22:24 +03:00

Manual merge of mysql-next-mr-runtime upstream.

This commit is contained in:
Davi Arnaut
2009-11-19 21:48:08 -02:00
84 changed files with 2377 additions and 703 deletions

View File

@@ -278,14 +278,11 @@ void my_hash_sort_8bit_bin(CHARSET_INFO *cs __attribute__((unused)),
{
const uchar *pos = key;
key+= len;
/*
Remove trailing spaces. We have to do this to be able to compare
'A ' and 'A' as identical
*/
while (key > pos && key[-1] == ' ')
key--;
key= skip_trailing_space(key, len);
for (; pos < (uchar*) key ; pos++)
{

View File

@@ -678,13 +678,12 @@ void my_hash_sort_latin1_de(CHARSET_INFO *cs __attribute__((unused)),
const uchar *key, size_t len,
ulong *nr1, ulong *nr2)
{
const uchar *end= key+len;
const uchar *end;
/*
Remove end space. We have to do this to be able to compare
'AE' and '<27>' as identical
*/
while (end > key && end[-1] == ' ')
end--;
end= skip_trailing_space(key, len);
for (; key < end ; key++)
{

View File

@@ -469,14 +469,11 @@ static void my_hash_sort_mb_bin(CHARSET_INFO *cs __attribute__((unused)),
{
const uchar *pos = key;
key+= len;
/*
Remove trailing spaces. We have to do this to be able to compare
'A ' and 'A' as identical
*/
while (key > pos && key[-1] == ' ')
key--;
key= skip_trailing_space(key, len);
for (; pos < (uchar*) key ; pos++)
{

View File

@@ -304,14 +304,13 @@ void my_hash_sort_simple(CHARSET_INFO *cs,
ulong *nr1, ulong *nr2)
{
register uchar *sort_order=cs->sort_order;
const uchar *end= key + len;
const uchar *end;
/*
Remove end space. We have to do this to be able to compare
'A ' and 'A' as identical
*/
while (end > key && end[-1] == ' ')
end--;
end= skip_trailing_space(key, len);
for (; key < (uchar*) end ; key++)
{
@@ -1165,9 +1164,8 @@ size_t my_well_formed_len_8bit(CHARSET_INFO *cs __attribute__((unused)),
size_t my_lengthsp_8bit(CHARSET_INFO *cs __attribute__((unused)),
const char *ptr, size_t length)
{
const char *end= ptr+length;
while (end > ptr && end[-1] == ' ')
end--;
const char *end;
end= (const char *) skip_trailing_space((const uchar *)ptr, length);
return (size_t) (end-ptr);
}