From: Jeff Trawick Date: Fri, 17 Aug 2001 17:24:46 +0000 (+0000) Subject: Fix a problem parsing tags. X-Git-Tag: 2.0.24~12 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=aa8de93129bc82f67c7bfbe27e695303516842f1;p=apache Fix a problem parsing tags. We're in find_end_sequence() walking over the directive and the rest of the tag but we stop parsing so we don't walk over too much storage (e.g., mmap) at once). When we resume later, ctx->directive_length has the value it had when we bailed out, so directive_length is wrong and we hit errors like: [Fri Aug 17 11:12:06 2001] [error] [client 127.0.0.1] unknown directiv e "include virt" in parsed doc /home/trawick/apacheinst/htdocs/manual/ mod/mod_include.html git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@90295 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/modules/filters/mod_include.c b/modules/filters/mod_include.c index ac71a5b9e2..6ac346bd25 100644 --- a/modules/filters/mod_include.c +++ b/modules/filters/mod_include.c @@ -270,6 +270,8 @@ static apr_bucket *find_end_sequence(apr_bucket *dptr, include_ctx_t *ctx, apr_b } while (c < buf + len) { if (ctx->bytes_parsed >= BYTE_COUNT_THRESHOLD) { + /* gonna start over parsing the directive next time through */ + ctx->directive_length = 0; return dptr; }