fast path if threshold>=1.0
This commit is contained in:
@@ -79,6 +79,14 @@ int sequal_full(char *a, char *b, float shold, float *ratio,
|
|||||||
*ratio = 1.0;
|
*ratio = 1.0;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
if(shold >= 1.0f)
|
||||||
|
{
|
||||||
|
/* strict mode: shold=1.0 means no fuzzy match possible
|
||||||
|
* (shit11 ratio is always <= 1.0, never > 1.0). Skip the
|
||||||
|
* Levenshtein DP entirely. */
|
||||||
|
*ratio = 0.0f;
|
||||||
|
return (cmp < 0) ? -1 : 1;
|
||||||
|
}
|
||||||
*ratio = shit11(s1, s2);
|
*ratio = shit11(s1, s2);
|
||||||
if(*ratio > shold)
|
if(*ratio > shold)
|
||||||
return 0;
|
return 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user