Add _set_env writer to non-PSGI Catalyst
[catagits/Catalyst-Runtime.git] / lib / Catalyst / Engine / CGI.pm
index 076f5b0..bd670da 100644 (file)
@@ -261,7 +261,7 @@ sub prepare_request {
     my ( $self, $c, %args ) = @_;
 
     if ( $args{env} ) {
-        $self->env( $args{env} );
+        $self->_set_env( $args{env} );
     }
 }
 
@@ -288,7 +288,10 @@ around write => sub {
 
     # Prepend the headers if they have not yet been sent
     if ( $self->_has_header_buf ) {
-        $buffer = $self->_clear_header_buf . $buffer;
+        my $headers = $self->_clear_header_buf;
+
+        $buffer = defined $buffer
+            ? $headers . $buffer : $headers;
     }
 
     return $self->$orig( $c, $buffer );