aboutsummaryrefslogtreecommitdiff
path: root/xs_match.h
diff options
context:
space:
mode:
authorltning <ltning@noreply.codeberg.org>2025-02-04 18:38:41 +0000
committerltning <ltning@noreply.codeberg.org>2025-02-04 18:38:41 +0000
commit114ed37f9c3e57a840155b9b71fa9cdf0d7ec8d6 (patch)
tree2a7747beb4d10fef57653ac1b91aed9469819dcd /xs_match.h
parentf6044d3aa0241a832b0ad1d2c394c0a1b814dbe3 (diff)
parenta2dde5dedaddb7fe91c061997e1314ba569c2edf (diff)
Merge branch 'master' into master
Diffstat (limited to 'xs_match.h')
-rw-r--r--xs_match.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/xs_match.h b/xs_match.h
index 0b89ac8..76c1bf3 100644
--- a/xs_match.h
+++ b/xs_match.h
@@ -24,6 +24,7 @@ int xs_match(const char *str, const char *spec)
retry:
for (;;) {
+ const char *q = spec;
char c = *str++;
char p = *spec++;
@@ -63,8 +64,12 @@ retry:
spec = b_spec;
str = ++b_str;
}
- else
+ else {
+ if (*q == '|')
+ spec = q;
+
break;
+ }
}
}
}