William A. Rowe, Jr. wrote:
Tom Donovan wrote:
Steffen wrote:
William A. Rowe, Jr. wrote:
Tom Donovan's confirmed the state of mpm_winnt as again working
with mod perl across service, console, and -X modes (and some
other slightly more obscure models).
I'll backport the correction to 2.0.63 and 2.2.8 and put this
whole issue to bed.
Now committed.
Indeed mod_perl is working in the mentioned cases,
But, in console, it breaks the control over the Dos-box. It is
cleared and
had to kill httpd.exe's manually when I want to stop Apache.
Arrrgh! I can't believe I missed that! You're right Steffen.
...
With the current code, closing the child window doesn't stop Apache,
it just removes the window. With the previous patch this wasn't a
problem - Apache shut down OK. I don't really know why, but I'll try
to find out.
I am going to hazard a guess. As of pre_config hook, we no longer have
a single handle to the console window; the have all been entirely
detached (stdin/stdout/stderr). In effect, I think win32 is treating
this as being daemonized and will no longer pass console events to the
child.
This should not be true for -X mode, perhaps it is also?
One source of confusion here may be the various ways to start Apache via the
"command-line".
When r609366 (comment #9 in bug 43534) is applied to 2.2.7:
If Apache is started with the command: > httpd.exe
the problem isn't apparent.
If Apache is started with the command: > START httpd.exe
this creates an Apache window with odd behavior:
* The window does not display all the parent's messages
* Closing the window does not stop Apache
* The window is not re-drawn when it is covered and uncovered (i.e. it has
no event loop).
With an earlier patch from comment #6 in bug 43534, mod_perl and the Apache window seem fine in all
startup cases I can think to try - but there is a concern about exactly when stdout gets directed to
the null device.
I don't quite follow this concern - but I'm sure there is a history somewhere. Is there a bug, post,
or test case which shows the problem with delaying this redirection of stdout on Windows? I can't
seem to find the history of this concern searching Bugzilla (back to change r88358 in Feb, 2001) or
the apache-dev archives.
thx,
-tom-