X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FCatalyst%2FEngine.pm;h=c0cdf1ebae34932efe1b944abb2ae36abf49f631;hb=eece41a2b27bdca624a6025d8a6055135e655e52;hp=2de21bd787d05d0707f3ac9032269d1f4fb9bdb1;hpb=ac5c933bdd463558e8d621507a53a7b247a9093e;p=catagits%2FCatalyst-Runtime.git diff --git a/lib/Catalyst/Engine.pm b/lib/Catalyst/Engine.pm index 2de21bd..c0cdf1e 100644 --- a/lib/Catalyst/Engine.pm +++ b/lib/Catalyst/Engine.pm @@ -16,8 +16,7 @@ use Scalar::Util (); has read_length => (is => 'rw'); has read_position => (is => 'rw'); -# Stringify to class -use overload '""' => sub { return ref shift }, fallback => 1; +no Moose; # Amount of data to read from input on each pass our $CHUNKSIZE = 64 * 1024; @@ -70,7 +69,9 @@ sub finalize_cookies { my @cookies; my $response = $c->response; - while( my($name, $val) = each %{ $response->cookies } ) { + foreach my $name (keys %{ $response->cookies }) { + + my $val = $response->cookies->{$name}; my $cookie = ( Scalar::Util::blessed($val) @@ -128,9 +129,6 @@ sub finalize_error { # Don't show body parser in the dump delete $c->req->{_body}; - # Don't show response header state in dump - delete $c->res->{_finalized_headers}; - my @infos; my $i = 0; for my $dump ( $c->dump_these ) { @@ -158,6 +156,7 @@ EOF (no) Vennligst prov igjen senere (dk) Venligst prov igen senere (pl) Prosze sprobowac pozniej +(pt) Por favor volte mais tarde $name = ''; @@ -293,7 +292,8 @@ sub finalize_uploads { my ( $self, $c ) = @_; my $request = $c->request; - while( my($key,$upload) = each %{ $request->uploads } ) { + foreach my $key (keys %{ $request->uploads }) { + my $upload = $request->uploads->{$key}; unlink grep { -e $_ } map { $_->tempname } (ref $upload eq 'ARRAY' ? @{$upload} : ($upload)); } @@ -314,7 +314,7 @@ sub prepare_body { unless ( $request->{_body} ) { my $type = $request->header('Content-Type'); $request->{_body} = HTTP::Body->new( $type, $length ); - $request->{_body}->{tmpdir} = $c->config->{uploadtmp} + $request->{_body}->tmpdir( $c->config->{uploadtmp} ) if exists $c->config->{uploadtmp}; } @@ -404,12 +404,14 @@ sub prepare_parameters { my $body_parameters = $request->body_parameters; my $query_parameters = $request->query_parameters; # We copy, no references - while( my($name, $param) = each(%$query_parameters) ) { + foreach my $name (keys %$query_parameters) { + my $param = $query_parameters->{$name}; $parameters->{$name} = ref $param eq 'ARRAY' ? [ @$param ] : $param; } # Merge query and body parameters - while( my($name, $param) = each(%$body_parameters) ) { + foreach my $name (keys %$body_parameters) { + my $param = $body_parameters->{$name}; my @values = ref $param eq 'ARRAY' ? @$param : ($param); if ( my $existing = $parameters->{$name} ) { unshift(@values, (ref $existing eq 'ARRAY' ? @$existing : $existing)); @@ -449,7 +451,7 @@ sub prepare_query_parameters { # replace semi-colons $query_string =~ s/;/&/g; - my @params = split /&/, $query_string; + my @params = grep { length $_ } split /&/, $query_string; for my $item ( @params ) { @@ -511,7 +513,8 @@ sub prepare_uploads { my $uploads = $request->{_body}->upload; my $parameters = $request->parameters; - while(my($name,$files) = each(%$uploads) ) { + foreach my $name (keys %$uploads) { + my $files = $uploads->{$name}; my @uploads; for my $upload (ref $files eq 'ARRAY' ? @$files : ($files)) { my $headers = HTTP::Headers->new( %{ $upload->{headers} } ); @@ -668,9 +671,7 @@ sub unescape_uri { =head1 AUTHORS -Sebastian Riedel, - -Andy Grundman, +Catalyst Contributors, see Catalyst.pm =head1 COPYRIGHT