]> granicus.if.org Git - apache/commitdiff
Fix a problem parsing tags.
authorJeff Trawick <trawick@apache.org>
Fri, 17 Aug 2001 17:24:46 +0000 (17:24 +0000)
committerJeff Trawick <trawick@apache.org>
Fri, 17 Aug 2001 17:24:46 +0000 (17:24 +0000)
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

modules/filters/mod_include.c

index ac71a5b9e248bfbabafccea6d26da4323c35ea9e..6ac346bd25d42c83d90658f24815a3346e3ae380 100644 (file)
@@ -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;
             }