On Mon, 28 May 2001, Gerald Richter wrote:

> Hi Randy,
>
> >    That fits with what I find, too - I seem to recall that you
> > pointed out earlier a problem with environment variables in mod_perl
> > in a different context, specifically "remembering" their old
> > values, so this seems to be a general mod_perl problem, at least
> > on Win32. It may even extend beyond mod_perl - on Win32 processes
> > started with Win32::Process don't inherit environment variables
> > set within the same script that launched the Win32::Process.
> >
>
> ...but with my Perl that I have compiled on my own it works. So it must have
> something to do with ActiveStates way to compile it.

That's true - I should have been more explicit. The environment
variable problem doesn't show up either for me on a Win32 compiled
without the flags needed for fork emulation on Win32. I'm going to try to
see if it's a problem with a linux perl compiled with ActiveState's
compile-time flags - that would indicate if it's Win32-specific or not.

> > The current directory problem may be challenging - with apache_1.3.19
> > and later, they changed things so launching Apache.exe sets the
> > ServerRoot relative path to that of the Apache.exe (this was for
> > people who double-click on the Apache.exe icon to start it).
>
> I don't think that has anything to do with this change in the start
> directory. Apache::Registry calls
>
> $r->chdir_file;
>
> which should change the current directory to the one of the file, but it
> doesn't with ActiveState Perl.
> chdir_file in defined in Apache.xs, which calls ap_chdir_file with
> r->filename as argument and this function simply looks for a / and calls
> chdir.
>
> I guess the problem is that chdir on windows doesn't like a path with / as
> path separators. So it seems that it is actualy an Apache bug...
>
> At least putting the following at the to test/html/registry/Execute.htm
> (which does the same as $r -> chdir_file should do), fixes the bug:
>
> use Cwd ;
> use File::Basename ;
>
> my $fn = $r -> filename ;
> chdir(dirname ($fn)) ;

Thanks for the clarification in pinning that down ... At least, as
you say, there is a workaround ....

best regards,
randy


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to