From: Steve Peters Date: Wed, 30 Apr 2008 12:57:38 +0000 (+0000) Subject: Upgrade to CGI.pm-3.37 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=ebb7c588e19eeb98693e63d130912163306d04b0;p=p5sagit%2Fp5-mst-13.2.git Upgrade to CGI.pm-3.37 p4raw-id: //depot/perl@33773 --- diff --git a/lib/CGI.pm b/lib/CGI.pm index 384a17c..a77a645 100644 --- a/lib/CGI.pm +++ b/lib/CGI.pm @@ -18,8 +18,8 @@ use Carp 'croak'; # The most recent version and complete docs are available at: # http://stein.cshl.org/WWW/software/CGI/ -$CGI::revision = '$Id: CGI.pm,v 1.249 2008/03/25 15:17:55 lstein Exp $'; -$CGI::VERSION='3.35'; +$CGI::revision = '$Id: CGI.pm,v 1.251 2008/04/23 13:08:23 lstein Exp $'; +$CGI::VERSION='3.37'; # HARD-CODED LOCATION FOR FILE UPLOAD TEMPORARY FILES. # UNCOMMENT THIS ONLY IF YOU KNOW WHAT YOU'RE DOING. @@ -37,7 +37,12 @@ use constant XHTML_DTD => ['-//W3C//DTD XHTML 1.0 Transitional//EN', $TAINTED = substr("$0$^X",0,0); } -$MOD_PERL = 0; # no mod_perl by default +$MOD_PERL = 0; # no mod_perl by default + +#global settings +$POST_MAX = -1; # no limit to uploaded files +$DISABLE_UPLOADS = 0; + @SAVED_SYMBOLS = (); @@ -91,13 +96,6 @@ sub initialize_globals { # it can just be renamed, instead of read and written. $CLOSE_UPLOAD_FILES = 0; - # Set this to a positive value to limit the size of a POSTing - # to a certain number of bytes: - $POST_MAX = -1; - - # Change this to 1 to disable uploads entirely: - $DISABLE_UPLOADS = 0; - # Automatically determined -- don't change $EBCDIC = 0; @@ -355,6 +353,7 @@ sub new { $self->r(Apache->request) unless $self->r; my $r = $self->r; $r->register_cleanup(\&CGI::_reset_globals); + $self->_setup_symbols(@SAVED_SYMBOLS) if @SAVED_SYMBOLS; } else { # XXX: once we have the new API @@ -363,6 +362,7 @@ sub new { my $r = $self->r; $r->subprocess_env unless exists $ENV{REQUEST_METHOD}; $r->pool->cleanup_register(\&CGI::_reset_globals); + $self->_setup_symbols(@SAVED_SYMBOLS) if @SAVED_SYMBOLS; } undef $NPH; } @@ -3783,7 +3783,7 @@ sub new { } my $self = {LENGTH=>$length, - CHUNKED=>!defined $length, + CHUNKED=>!$length, BOUNDARY=>$boundary, INTERFACE=>$interface, BUFFER=>'', diff --git a/lib/CGI/Cookie.pm b/lib/CGI/Cookie.pm index 897e331..c9f318e 100644 --- a/lib/CGI/Cookie.pm +++ b/lib/CGI/Cookie.pm @@ -13,7 +13,7 @@ package CGI::Cookie; # wish, but if you redistribute a modified version, please attach a note # listing the modifications you have made. -$CGI::Cookie::VERSION='1.28'; +$CGI::Cookie::VERSION='1.29'; use CGI::Util qw(rearrange unescape escape); use CGI; @@ -51,7 +51,7 @@ sub fetch { my %results; my($key,$value); - my(@pairs) = split("[;,] ?",$raw_cookie); + my @pairs = split("[;,] ?",$raw_cookie); foreach (@pairs) { s/\s*(.*?)\s*/$1/; if (/^([^=]+)=(.*)/) { @@ -88,7 +88,7 @@ sub parse { my ($self,$raw_cookie) = @_; my %results; - my(@pairs) = split("; ?",$raw_cookie); + my @pairs = split("[;,] ?",$raw_cookie); foreach (@pairs) { s/\s*(.*?)\s*/$1/; my($key,$value) = split("=",$_,2); diff --git a/lib/CGI/Fast.pm b/lib/CGI/Fast.pm index 85fc158..d29feb4 100644 --- a/lib/CGI/Fast.pm +++ b/lib/CGI/Fast.pm @@ -55,6 +55,7 @@ sub new { } } CGI->_reset_globals; + $self->_setup_symbols(@SAVED_SYMBOLS) if @CGI::SAVED_SYMBOLS; return $CGI::Q = $self->SUPER::new($initializer, @param); } diff --git a/lib/CGI/t/upload.t b/lib/CGI/t/upload.t index 9f92ca4..fabff44 100644 --- a/lib/CGI/t/upload.t +++ b/lib/CGI/t/upload.t @@ -81,7 +81,8 @@ is( $q->param('300x300_gif') , '300x300.gif' , 'filename_4' ); { my $test = "multiple file names are handled right with same-named upload fields"; my @hello_names = $q->param('hello_world'); - is_deeply(\@hello_names, [ 'goodbye_world.txt','hello_world.txt' ], $test); + is ($hello_names[0],'goodbye_world.txt',$test. "...first file"); + is ($hello_names[1],'hello_world.txt',$test. "...second file"); } #-----------------------------------------------------------------------------