diff options
Diffstat (limited to 'FS')
-rw-r--r-- | FS/FS/Mason.pm | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/FS/FS/Mason.pm b/FS/FS/Mason.pm index cbb73f4d9..414e1fa50 100644 --- a/FS/FS/Mason.pm +++ b/FS/FS/Mason.pm @@ -468,15 +468,19 @@ if ( -e $addl_handler_use_file ) { no warnings 'redefine'; *CGI::redirect = sub { my $self = shift; - my $cookie = ''; - if ( $_[0] eq '-cookie' ) { #this isn't actually used at the moment - (my $x, $cookie) = (shift, shift); - $HTML::Mason::r->err_headers_out->add( 'Set-cookie' => $cookie ); - } - my $location = shift; use vars qw($m); + my $location = ''; + if ( $_[0] =~ /^-/ ) { + my %opt = @_; + $location = $opt{'-uri'}; + my $cookie = $opt{'-cookie'}; + $m->apache_req->err_headers_out->{'Set-cookie'} = $cookie if $cookie; + } else { + $location = shift; + } + # false laziness w/below if ( @DBIx::Profile::ISA ) { |