Merge branch 'mysql-5.1' into mysql-5.5
This commit is contained in:
commit
c9a38e8698
@ -1242,7 +1242,8 @@ static ulong get_access(TABLE *form, uint fieldnr, uint *next_field)
|
|||||||
/*
|
/*
|
||||||
Return a number which, if sorted 'desc', puts strings in this order:
|
Return a number which, if sorted 'desc', puts strings in this order:
|
||||||
no wildcards
|
no wildcards
|
||||||
wildcards
|
strings containg wildcards and non-wildcard characters
|
||||||
|
single muilt-wildcard character('%')
|
||||||
empty string
|
empty string
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -1259,7 +1260,16 @@ static ulong get_sort(uint count,...)
|
|||||||
{
|
{
|
||||||
char *start, *str= va_arg(args,char*);
|
char *start, *str= va_arg(args,char*);
|
||||||
uint chars= 0;
|
uint chars= 0;
|
||||||
uint wild_pos= 0; /* first wildcard position */
|
uint wild_pos= 0;
|
||||||
|
|
||||||
|
/*
|
||||||
|
wild_pos
|
||||||
|
0 if string is empty
|
||||||
|
1 if string is a single muilt-wildcard
|
||||||
|
character('%')
|
||||||
|
first wildcard position + 1 if string containg wildcards and
|
||||||
|
non-wildcard characters
|
||||||
|
*/
|
||||||
|
|
||||||
if ((start= str))
|
if ((start= str))
|
||||||
{
|
{
|
||||||
@ -1270,6 +1280,8 @@ static ulong get_sort(uint count,...)
|
|||||||
else if (*str == wild_many || *str == wild_one)
|
else if (*str == wild_many || *str == wild_one)
|
||||||
{
|
{
|
||||||
wild_pos= (uint) (str - start) + 1;
|
wild_pos= (uint) (str - start) + 1;
|
||||||
|
if (!(wild_pos == 1 && *str == wild_many && *(++str) == '\0'))
|
||||||
|
wild_pos++;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
chars= 128; // Marker that chars existed
|
chars= 128; // Marker that chars existed
|
||||||
|
Loading…
x
Reference in New Issue
Block a user