From 8a70fa901e02be3163d7d8b3156e6c34e79dd473 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Fri, 6 Feb 2026 15:28:48 +0100 Subject: [PATCH] hwdb: quote invalid patterns in error messages If the pattern is invalid, we don't quite know how it looks, so it's safer to quote it. Also simplify the call to sorted(). --- hwdb.d/parse_hwdb.py | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/hwdb.d/parse_hwdb.py b/hwdb.d/parse_hwdb.py index f5b63b7d34b..87a2316c464 100755 --- a/hwdb.d/parse_hwdb.py +++ b/hwdb.d/parse_hwdb.py @@ -266,12 +266,12 @@ def check_matches(groups): if gr: # we check this first to provide an easy error message if rest[-1] not in '*:': - error('Pattern {} does not end with "*" or ":"', match) + error('Pattern {!r} does not end with "*" or ":"', match) try: gr.parseString(rest) except ParseBaseException as e: - error('Pattern {} is invalid: {}', match, e) + error('Pattern {!r} is invalid: {}', match, e) continue matches.sort() @@ -353,12 +353,11 @@ def print_summary(fname, groups): error(f'{fname}: no matches or props') if __name__ == '__main__': - args = sys.argv[1:] or sorted( - [ - os.path.dirname(sys.argv[0]) + '/20-dmi-id.hwdb', - os.path.dirname(sys.argv[0]) + '/20-net-ifname.hwdb', - ] + glob.glob(os.path.dirname(sys.argv[0]) + '/[678][0-9]-*.hwdb') - ) + args = sys.argv[1:] or sorted([ + os.path.dirname(sys.argv[0]) + '/20-dmi-id.hwdb', + os.path.dirname(sys.argv[0]) + '/20-net-ifname.hwdb', + *glob.glob(os.path.dirname(sys.argv[0]) + '/[678][0-9]-*.hwdb'), + ]) for fname in args: groups = parse(fname) -- 2.47.3