logo       

Re: $r->dir_config->(un)set issue...: msg#00321

apache.mod-perl

Subject: Re: $r->dir_config->(un)set issue...

On Wed, 2002-07-31 at 21:33, Geoffrey Young wrote:
>
>
> simran wrote:
>
> > Does that mean that
> >
> > $r->dir_config is not the same as $r->server->dir_config ?
> >
> > A PerlUnsetVar would indeed be very handy... as would PerlUnsetEnv :-)
>
> I looked into implementing that the last time it came up but IIRC it
> would take redoing the merge routines - from what I remember I got
> PerlUnsetVar to work at conf parse time, but it ended up being
> repopulated at request time when the directory merger ran (to merge
> $r->server->dir_config and $r->dir_config I think).
>
> calling unset() manually is probably your best bet.
>

I wouldn't mind using that, except that it does not work for me... (i
have copied a part of the original message below as that got snipped...)

I have a situation where it is convinent for me to define a global
"PerlSetVar" in my httpd.conf and then unset it for particular virtual
hosts.

I used to use the following configuration successfully:

----------------------------------------------------
httpd.conf
----------

<Perl>
use Apache::Server;
Apache->server->dir_config->unset("MyVar");
</Perl>

-----------------------------------------------------

That stopped working for me ever since we compiled
Apache/1.3.26 (Linix - Debian) with mod_perl/1.27


Has anyone else had the same issue?

On a similar note:

The following pices of code do not work:

-----------------------------------------------------
code sample 1
--------------

1. sub handler {
2. my $r = instance Apache::Request(shift);
3.
4. $r->dir_config(MyVar => undef);
5.
6. $r->dir_config->unset("MyVar");
7.
8. $r->dir_config->set(MyVar => undef);
9.
10. }


None of lines 4, 6 or 8 actually unset the variable.

A collegue tells me that if a "true" value (for the key MyVar) is not
passed to set then it ends up returning the value of MyVar - but then
how i want to set the value of MyVar to be false. I would have though
that unset/set would have specifically done what i told them to
unset/set rather than do fancy things with truth values...







<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise