httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From William A Rowe Jr <wr...@rowe-clan.net>
Subject Re: svn commit: r1688331 - /httpd/httpd/trunk/modules/filters/mod_substitute.c
Date Tue, 30 Jun 2015 01:35:45 GMT
On Mon, Jun 29, 2015 at 8:06 PM, Yann Ylavic <ylavic.dev@gmail.com> wrote:

> Maybe defining (naming) inherit_before tristate values would help:
>

Not really...

+    a->inherit_before = (over->inherit_before == INHERIT_ON
> +                         || (over->inherit_before == INHERIT_UNSET
> +                             && base->inherit_before == INHERIT_ON));
>      if (a->inherit_before) {
>

This logic was convoluted and therefore resulted in in the old default
behavior if the option wasn't explicitly set.  See the most recent trunk
commits for a more legible solution that follows the design pattern used
throughout other core modules.

Your logic above fails to preserve the unset state, and fails to when
consider base->inherit_before is explicitly off.  This is why it is
preferred not to invent new wheels when good wheels exist, particularly if
there will be a square side on the new wheel.

Bill

Mime
View raw message