Do a load of small refatoring to remove direct hash accesses, update todo, bump dates...
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Engine / FastCGI.pm
index b55a633..f716325 100644 (file)
@@ -46,7 +46,9 @@ Options may also be specified;
 
 =item leave_umask
 
-Set to 1 to disable setting umask to 0 for socket open =item nointr
+Set to 1 to disable setting umask to 0 for socket open
+
+=item nointr
 
 Do not allow the listener to be interrupted by Ctrl+C
 
@@ -138,7 +140,7 @@ sub run {
         $proc_manager && $proc_manager->pm_pre_dispatch();
         
         # If we're running under Lighttpd, swap PATH_INFO and SCRIPT_NAME
-        # http://lists.rawmode.org/pipermail/catalyst/2006-June/008361.html
+        # http://lists.scsys.co.uk/pipermail/catalyst/2006-June/008361.html
         # Thanks to Mark Blythe for this fix
         if ( $env{SERVER_SOFTWARE} && $env{SERVER_SOFTWARE} =~ /lighttpd/ ) {
             $env{PATH_INFO} ||= delete $env{SCRIPT_NAME};
@@ -157,9 +159,9 @@ sub run {
 sub write {
     my ( $self, $c, $buffer ) = @_;
 
-    unless ( $self->{_prepared_write} ) {
+    unless ( $self->_prepared_write ) {
         $self->prepare_write($c);
-        $self->{_prepared_write} = 1;
+        $self->_prepared_write(1);
     }
     
     # XXX: We can't use Engine's write() method because syswrite
@@ -167,8 +169,8 @@ sub write {
     # written: http://www.fastcgi.com/om_archive/mail-archive/0128.html
     
     # Prepend the headers if they have not yet been sent
-    if ( my $headers = delete $self->{_header_buf} ) {
-        $buffer = $headers . $buffer;
+    if ( $self->_has_header_buf ) {
+        $buffer = $self->_clear_header_buf . $buffer;
     }
 
     # FastCGI does not stream data properly if using 'print $handle',