Not_contain should use strstr, not strcmp on strings. (bug 13632)
For Version 2.5.0, (same for previous version 2.4.2), in source file fccfg.c, on line 700, Original: ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) == 0; Should change to: ret = FcStrStrIgnoreCase (left.u.s, right.u.s) == 0; I think this is just a mistake when copy-n-paste similar codes in the same function. Apparently, return for "Not_contain" should be just the inverse of "Contain", not the same as "Equal".
This commit is contained in:
parent
6e5d2cb931
commit
0f7870887a
|
@ -697,7 +697,7 @@ FcConfigCompareValue (const FcValue *left_o,
|
|||
ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) != 0;
|
||||
break;
|
||||
case FcOpNotContains:
|
||||
ret = FcStrCmpIgnoreCase (left.u.s, right.u.s) == 0;
|
||||
ret = FcStrStrIgnoreCase (left.u.s, right.u.s) == 0;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue