Re: Headers Sent Twice

David Wheeler <[email protected]>
Newsgroups gmane.comp.web.mason.devel
Message-ID <[email protected]>
On May 21, 2004, at 1:37 PM, Dave Rolsky wrote:

>> Okay. So I can add a <Location> directive or something and have the
>> subclass handle its requests.
>
> Right.

Okay, I finally figured this out, and just committed a new test that 
ensures that headers are only sent once when $interp->make_request() 
aborts or redirects and the headers have already been sent. It was 
pretty hard to figure out; the approach to testing necessitated by the 
subversion of the old Apache::test made it...challenging.

At any rate, I'd like to suggest a number of changes to the testing 
stuff in 1.2x, since I've been poking around a lot and it would be 
fairly easy to do right now. Let me know if you're willing:

* Add -d to point to the test directory as the server root when 
starting Apache. I actually just committed this unintentionally. The 
reason I added it was so that modules that start up really early and 
attempt to write files will do so in t/ rather than, say 
/usr/local/apache, where the current user may not have permission to 
create files. I have this problem with mod_ssl compiled to use mm. See 
this thread on [email protected] for details:

   http://marc.theaimsgroup.com/?t=108699898800001&r=1&w=2

* Following up on the above, I'd like to move the log files into t/logs 
and the conf file(s) into t/conf. make clean would delete these 
directories, of course. I want to do this for two reason: 1. It's how 
Apache::Test works; and 2. so that mod_ssl/mm installations don't fail 
when they try to write a semaphore file to t/logs when that directory 
doesn't exist.

   http://marc.theaimsgroup.com/?l=apache-test-dev&m=108723478428874&w=2

* I'd like to change all the code that prints diagnostics during tests 
to print to STDERR and to prepend "# " to every line. This is so that: 
1. You see the diagnostic messages (Test::Harness captures STDOUT and 
doesn't pass it to the terminal, but passes STDERR); and 2. So that 
there's no risk of confusing Test::Harness during tests (because it 
ignores lines starting with "#".

The overall aim of these changes is to make running the tests in 
t/08-ah.t safer. If these changes sound okay to you guys, I can get to 
work on it and quickly send a patch. Let me know.

Regards,

David



-------------------------------------------------------
This SF.Net email is sponsored by The 2004 JavaOne(SM) Conference
Learn from the experts at JavaOne(SM), Sun's Worldwide Java Developer
Conference, June 28 - July 1 at the Moscone Center in San Francisco, CA
REGISTER AND SAVE! http://java.sun.com/javaone/sf Priority Code NWMGYKND
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.