Yes I think it's more complicated.
I don't have the original setup that caused my problem, but i'm pretty sure I found
that if I set a mixed-case env var (say 'MyEnv_Var') with SetEnv, in my mod_perl
app I got the variable set (exists == true) but with no value, whereas using PerlSetEnv
with the same variable name, I got the value in %ENV but the var name was uppercased.
At the moment i have just worked around the problem by using SetEnv but with an
all uppercase varaible name.
Regards; Colin Randy Kobes wrote:
On Wed, 2 Feb 2005, Stas Bekman wrote:
Randy Kobes wrote:
[...]
I think yes. I'm sure you have a patch already :)So the behaviour of SetEnv changed from Apache-1 to Apache-2, as far as Win32 case goes, while PerlSetEnv maintained the same behaviour from mp1 to mp2.
I suppose one could argue that we should change
PerlSetEnv under mp2 to lower-case things, so as
to be consistent with SetEnv?
Actually, things are a bit more complicated on mp2 than I thought ... The example I gave earlier had 2 SetEnv/PerlSetEnv directives, differing in case, which is a bit artificial. If there's just one such directive, then both SetEnv/PerlSetEnv seem to behave normally (taking into account that, on Windows, $ENV{FOO} and $ENV{foo} are the same). However, there does seen to be a problem (with SetEnv) when it's all lower-case SetEnv foo bar in that $ENV{foo} doesn't seem to get set (irrespective of the case of "foo". There's still a difference between PerlSetEnv and SetEnv, but I don't see the pattern yet; I'll keep looking.