Doug MacEachern wrote:
> lemme guess, Perl_rsignal? somehow i managed not to commit this
> yesterday, it's in cvs now. i don't have a win32 system to test on at the
> moment, so any feeback from you, Randy K and others helps a great deal,
> thanks.
Great!
I've just given the latest cvs another try, and for the first time that I've seen
ApacheModulePerl.dll compiled and linked with 0 errors and 0 warnings.
What's more, it even seems to work too after having given it a quick bashing.
Unfortunately (for me, at least), I've still got the same problem which I had with
Perl 5.005_03, namely that I can't re-direct STDOUT in system() calls.
The following program works fine:
$| = 1;
print "Content-Type: text/plain\n\n";
$status = system "D:\\WINNT\\system32\\ipconfig.exe";
print "The system() call exited with status $status.\n";
(under Apache the output from IPCONFIG.EXE appears in the browser, under
Apache+mod_perl it disappears somewhere, like the mod_perl Guide says it will, and
$status is 0 both times).
But, if I change:
$status = system "D:\\WINNT\\system32\\ipconfig.exe";
to:
$status = system "D:\\WINNT\\system32\\ipconfig.exe > D:\\Temp\\ip.txt";
then it carries on fine under Apache (now re-directing the output to the "ip.txt"
file), but under Apache+mod_perl the $status gets set to 256, the "ip.txt" file is
not created and I get the error
The handle could not be opened
during redirection of handle 1.
in error.log
What is it that changed between Apache 1.3.6 (which doesn't have this problem) and
Apache 1.3.12 which causes this to happen, and can mod_perl be changed to cope
with it?
Steve Hay