X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=urlmatch.c;h=29272a5c4f4d4a1785b66cb3c3a213c911d0883b;hb=dc44639904c9a0899854c79c97c248f3d3cc2bdc;hp=3e42bd750485d67bb6151ab5f15ac09a0d887502;hpb=17c8e0b33dc6d0fc975fb4ca1d78d859e77791a6;p=thirdparty%2Fgit.git diff --git a/urlmatch.c b/urlmatch.c index 3e42bd7504..29272a5c4f 100644 --- a/urlmatch.c +++ b/urlmatch.c @@ -557,6 +557,8 @@ int urlmatch_config_entry(const char *var, const char *value, void *cb) const char *key, *dot; struct strbuf synthkey = STRBUF_INIT; int retval; + int (*select_fn)(const struct urlmatch_item *a, const struct urlmatch_item *b) = + collect->select_fn ? collect->select_fn : cmp_matches; if (!skip_prefix(var, collect->section, &key) || *(key++) != '.') { if (collect->cascade_fn) @@ -587,7 +589,7 @@ int urlmatch_config_entry(const char *var, const char *value, void *cb) if (!item->util) { item->util = xcalloc(1, sizeof(matched)); } else { - if (cmp_matches(&matched, item->util) < 0) + if (select_fn(&matched, item->util) < 0) /* * Our match is worse than the old one, * we cannot use it.