]> git.ipfire.org Git - thirdparty/apache/httpd.git/commit
Bring forward from 1.3:
authorTony Finch <fanf@apache.org>
Thu, 18 Jan 2001 22:36:58 +0000 (22:36 +0000)
committerTony Finch <fanf@apache.org>
Thu, 18 Jan 2001 22:36:58 +0000 (22:36 +0000)
commita81e4faefeeb5eb35e335297e9ea9592723f4409
tree83c294422b20cf7932fc7ff5b9afb402fba3ea80
parent06862f975b8aab3628a3f5bf8b9246116b7a41c2
Bring forward from 1.3:

I broke mod_rewrite by modifying strings in place when expanding them,
because variable lookups can cause subrequests which cause mod_rewrite
to do its stuff again including an expansion on the same string, which
is then syntactically invalid. So copy the lookup keys somewhere else
before using them in such a way that may cause recursion.

In addition to this, my parser could also be confused by complicated
nested rewrite map expansions like ${map1:${map2:key|dflt}|dflt} so
fix that too by keeping track of {} when looking for |.

PR:             7087

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@87723 13f79535-47bb-0310-9956-ffa450edef68
CHANGES
modules/mappers/mod_rewrite.c
modules/mappers/mod_rewrite.h