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;
|
||||
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);
|
||||
if(*ratio > shold)
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user