From: Junio C Hamano Date: Mon, 22 Dec 2014 20:17:34 +0000 (-0800) Subject: Merge branch 'jk/gitweb-with-newer-cgi-multi-param' into maint X-Git-Tag: v2.2.2~14 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/0b5c641490b11d887ec147b7acbe6f147bce6905?hp=8d5134399c8f87d57b7199b8886f7aa8169e3df5 Merge branch 'jk/gitweb-with-newer-cgi-multi-param' into maint "gitweb" used to depend on a behaviour that was deprecated by recent CGI.pm. * jk/gitweb-with-newer-cgi-multi-param: gitweb: hack around CGI's list-context param() handling --- diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index ccf75169dd..7a5b23acf2 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -20,6 +20,10 @@ use Time::HiRes qw(gettimeofday tv_interval); binmode STDOUT, ':utf8'; +if (!defined($CGI::VERSION) || $CGI::VERSION < 4.08) { + eval 'sub CGI::multi_param { CGI::param(@_) }' +} + our $t0 = [ gettimeofday() ]; our $number_of_git_cmds = 0; @@ -871,7 +875,7 @@ sub evaluate_query_params { while (my ($name, $symbol) = each %cgi_param_mapping) { if ($symbol eq 'opt') { - $input_params{$name} = [ map { decode_utf8($_) } $cgi->param($symbol) ]; + $input_params{$name} = [ map { decode_utf8($_) } $cgi->multi_param($symbol) ]; } else { $input_params{$name} = decode_utf8($cgi->param($symbol)); }