aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReyk Floeter <reyk@esdenera.com>2015-06-21 11:45:58 +0200
committerReyk Floeter <reyk@esdenera.com>2015-06-21 11:45:58 +0200
commit120d520b19891000b704cf8fbd666c6a14e6b2ef (patch)
tree7f836df30d97ccd621ebd53884d7f4d2b57bb25d
parent1de57f991a98d99872c5edb5200ca8309126187d (diff)
parentdf6d58c8a50cc5d11d3b16986c5ff8ec8cea09b6 (diff)
downloadhttpd-120d520b19891000b704cf8fbd666c6a14e6b2ef.tar.gz
httpd-120d520b19891000b704cf8fbd666c6a14e6b2ef.zip
Merge branch 'semarie-patterns'
-rw-r--r--httpd/patterns.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/httpd/patterns.c b/httpd/patterns.c
index f4b999d..8fbaa28 100644
--- a/httpd/patterns.c
+++ b/httpd/patterns.c
@@ -375,6 +375,8 @@ match(struct match_state *ms, const char *s, const char *p)
}
/* points to what is next */
ep = classend(ms, p);
+ if (ms->error != NULL)
+ break;
previous =
(s == ms->src_init) ? '\0' : *(s - 1);
if (!matchbracketclass(uchar(previous),
@@ -416,6 +418,8 @@ match(struct match_state *ms, const char *s, const char *p)
dflt:
/* points to optional suffix */
ep = classend(ms, p);
+ if (ms->error != NULL)
+ break;
/* does not match at least once? */
if (!singlematch(ms, s, p, ep)) {