Merge pull request #2069 from sysown/v2.0.5-tb1

Improvement in query digest to remove unnecessary plus and minus signs
pull/2077/head
René Cannaò 7 years ago committed by GitHub
commit 98af338b0b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -379,7 +379,17 @@ char *mysql_query_digest_and_first_comment(char *s, int _len, char **first_comme
// Last char process
if(len == i + 1)
{
char *_p = p_r_t;
_p-=3;
p_r = p_r_t;
if ( _p >= r && ( *(_p+2) == '-' || *(_p+2) == '+') ) {
if (
( *(_p+1) == ',' ) || ( *(_p+1) == '(' ) ||
( ( *(_p+1) == ' ' ) && ( *_p == ',' || *_p == '(' ) )
) {
p_r--;
}
}
*p_r++ = '?';
flag = 0;
break;
@ -404,13 +414,23 @@ char *mysql_query_digest_and_first_comment(char *s, int _len, char **first_comme
// satisfied closing string - swap string to ?
if(*s == qutr_char && (len == i+1 || *(s + SIZECHAR) != qutr_char))
{
p_r = p_r_t;
*p_r++ = '?';
flag = 0;
if(i < len)
s++;
i++;
continue;
char *_p = p_r_t;
_p-=3;
p_r = p_r_t;
if ( _p >= r && ( *(_p+2) == '-' || *(_p+2) == '+') ) {
if (
( *(_p+1) == ',' ) || ( *(_p+1) == '(' ) ||
( ( *(_p+1) == ' ' ) && ( *_p == ',' || *_p == '(' ) )
) {
p_r--;
}
}
*p_r++ = '?';
flag = 0;
if(i < len)
s++;
i++;
continue;
}
}
@ -422,6 +442,16 @@ char *mysql_query_digest_and_first_comment(char *s, int _len, char **first_comme
// last single char
if(p_r_t == p_r)
{
char *_p = p_r_t;
_p-=3;
if ( _p >= r && ( *(_p+2) == '-' || *(_p+2) == '+') ) {
if (
( *(_p+1) == ',' ) || ( *(_p+1) == '(' ) ||
( ( *(_p+1) == ' ' ) && ( *_p == ',' || *_p == '(' ) )
) {
p_r--;
}
}
*p_r++ = '?';
i++;
continue;
@ -432,7 +462,17 @@ char *mysql_query_digest_and_first_comment(char *s, int _len, char **first_comme
{
if(is_digit_string(p_r_t, p_r))
{
char *_p = p_r_t;
_p-=3;
p_r = p_r_t;
if ( _p >= r && ( *(_p+2) == '-' || *(_p+2) == '+') ) {
if (
( *(_p+1) == ',' ) || ( *(_p+1) == '(' ) ||
( ( *(_p+1) == ' ' ) && ( *_p == ',' || *_p == '(' ) )
) {
p_r--;
}
}
*p_r++ = '?';
if(len == i+1)
{

Loading…
Cancel
Save