# HG changeset patch # User Franz Glasner # Date 1741166691 -3600 # Node ID dc1f08937621b0033409da37f9eacb0de74ec5b8 # Parent 73d13be531b5692b49ea78a9af019de0d96a7967 FIX: fnmatch: handle None fnmatch filter definitions diff -r 73d13be531b5 -r dc1f08937621 cutils/util/fnmatch.py --- a/cutils/util/fnmatch.py Wed Mar 05 10:22:29 2025 +0100 +++ b/cutils/util/fnmatch.py Wed Mar 05 10:24:51 2025 +0100 @@ -104,17 +104,17 @@ @classmethod def build_from_commandline_patterns(klass, filter_definitions): matchers = [] - for action, kpattern in filter_definitions: - kind, sep, pattern = kpattern.partition(':') - if not sep: - # use the default - kind = "glob" - pattern = kpattern - factory = klass._registry.get(kind, None) - if not factory: - raise RuntimeError("unknown pattern kind: {}".format(kind)) - matchers.append((action, kind, factory(pattern), pattern)) - + if filter_definitions: + for action, kpattern in filter_definitions: + kind, sep, pattern = kpattern.partition(':') + if not sep: + # use the default + kind = "glob" + pattern = kpattern + factory = klass._registry.get(kind, None) + if not factory: + raise RuntimeError("unknown pattern kind: {}".format(kind)) + matchers.append((action, kind, factory(pattern), pattern)) return klass(matchers) def shall_visit(self, fn):