fix for ->engine->env in Catalyst::Engine::CGI & FastCGI (it should be complete now)
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Engine / FastCGI.pm
index 85dee52..3764bc4 100644 (file)
@@ -220,6 +220,12 @@ sub _fix_env
     my $self = shift;
     my $env = shift;
 
+    # we are gonna add variables from current system environment %ENV to %env 
+    # that contains at this moment just variables taken from FastCGI request
+    foreach my $k (keys(%ENV)) {
+      $env->{$k} = $ENV{$k} unless defined($env->{$k});
+    }
+
     return unless ( $env->{SERVER_SOFTWARE} );
 
     # If we're running under Lighttpd, swap PATH_INFO and SCRIPT_NAME
@@ -297,9 +303,9 @@ static, and dynamic.
 
 The FastCgiExternalServer directive tells Apache that when serving
 /tmp/myapp to use the FastCGI application listenting on the socket
-/tmp/mapp.socket.  Note that /tmp/myapp.fcgi does not need to exist --
+/tmp/mapp.socket.  Note that /tmp/myapp.fcgi B<MUST NOT> exist --
 it's a virtual file name.  With some versions of C<mod_fastcgi> or
-C<mod_fcgid>, you can use any name you like, but most require that the
+C<mod_fcgid>, you can use any name you like, but some require that the
 virtual filename end in C<.fcgi>.
 
 It's likely that Apache is not configured to serve files in /tmp, so the