From 041dfff5db1f09c92435e46b65931b04364c37f6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?P=C3=A1draig=20Brady?= Date: Mon, 14 Feb 2022 17:25:04 +0000 Subject: [PATCH] dircolors: speed up processing of TERM entries * src/dircolors.c (main): Avoid glob matching when we've already matched in a group of {COLOR,}TERM entries. --- src/dircolors.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/dircolors.c b/src/dircolors.c index 5c92299621..f8e2f549f0 100644 --- a/src/dircolors.c +++ b/src/dircolors.c @@ -328,17 +328,13 @@ dc_parse_stream (FILE *fp, char const *filename) unrecognized = false; if (c_strcasecmp (keywd, "TERM") == 0) { - if (fnmatch (arg, term, 0) == 0) - state = ST_TERMSURE; - else if (state != ST_TERMSURE) - state = ST_TERMNO; + if (state != ST_TERMSURE) + state = fnmatch (arg, term, 0) == 0 ? ST_TERMSURE : ST_TERMNO; } else if (c_strcasecmp (keywd, "COLORTERM") == 0) { - if (fnmatch (arg, colorterm, 0) == 0) - state = ST_TERMSURE; - else if (state != ST_TERMSURE) - state = ST_TERMNO; + if (state != ST_TERMSURE) + state = fnmatch (arg, colorterm, 0) == 0 ? ST_TERMSURE : ST_TERMNO; } else { -- 2.47.2