From 7aa9f5ec98436182b2b5ebeb57828d2daf27f20a Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Thu, 25 Sep 2025 15:21:04 +0200 Subject: [PATCH] BUG/MINOR: pattern: Fix pattern lookup for map with opt@ prefix When we look for a map file reference, the file@ prefix is removed because if may be omitted. The same is true with opt@ prefix. However this case was not properly performed in pat_ref_lookup(). Let's do so. This patch must be backported as far as 3.0. --- src/pattern.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pattern.c b/src/pattern.c index f01e693a5..0c662a989 100644 --- a/src/pattern.c +++ b/src/pattern.c @@ -1537,9 +1537,11 @@ struct pat_ref *pat_ref_lookup(const char *reference) { struct pat_ref *ref; - /* Skip file@ prefix, it is the default case. Can be mixed with ref omitting the prefix */ + /* Skip file@ or opt@ prefix, it is the default case. Can be mixed with ref omitting the prefix */ if (strlen(reference) > 5 && strncmp(reference, "file@", 5) == 0) reference += 5; + else if (strlen(reference) > 4 && strncmp(reference, "opt@", 4) == 0) + reference += 4; list_for_each_entry(ref, &pattern_reference, list) if (ref->reference && strcmp(reference, ref->reference) == 0) -- 2.47.3