diff --git a/src/sleuth.c b/src/sleuth.c index 31d0c33..73d378b 100644 --- a/src/sleuth.c +++ b/src/sleuth.c @@ -4,7 +4,9 @@ struct gargoyle_opt *gargoyle_find_brand(uint16_t optc, struct gargoyle_opt *optv, const char *brand) { for(; optc; optc -= 1, optv += 1) { - if(gargoyle_cmp(brand, optv->brand, optv->brand_sz, GARGOYLE_CMP_FLXBL)) { + uint8_t end = !*(brand + optv->brand_sz) || *(brand + optv->brand_sz) == '='; + + if(gargoyle_cmp(brand, optv->brand, optv->brand_sz, GARGOYLE_CMP_FLXBL) && end) { return optv; } } diff --git a/src/twine.c b/src/twine.c index 123318d..456c3be 100644 --- a/src/twine.c +++ b/src/twine.c @@ -20,5 +20,5 @@ uint8_t gargoyle_cmp(const char *s1, const char *s2, uint16_t len, uint8_t flags len -= 1; } - return *s1 == *s2; + return 1; }