threads / patch / 37742

patchUpdate gitweb.perl to current CGI.pm API

Subject: [PATCH] Update gitweb.perl to current CGI.pm API

## tl;dr

3 messages between Oct 16, 2014 and Oct 16, 2014. Diffs are folded; open one to read it.

replies: 2people: 2as markdown or json

Roland Mas· Oct 16, 2014, 06:54 UTC · lore
Hi all,
  This simple two-line patch fixes a bug that makes gitweb unusable on
systems where the installed CGI.pm is version 4.04 or later (such as on
Debian unstable).  That version removed the startform method, which had
previously been deprecated in favour of start_form since 2009.
  I don't have any specific tests for that change, but it does help
fixing the testsuite of FusionForge (which includes a test of its Git
plugin, involving gitweb).
  For reference, this is Debian bug #765525 (http://bugs.debian.org/765525).
  (I'm not subscribed to the git@vger mailing-list; please Cc me on
replies.)
  Thanks,
Roland.
>From 1b74cfb8568927a307f165e428455789398f6d61 Mon Sep 17 00:00:00 2001
From: Roland Mas <lolando@debian.org>
Date: Thu, 16 Oct 2014 00:05:25 +0200
Subject: [PATCH] Update gitweb.perl to current CGI.pm API

CGI.pm 4.04 removed the startform method, which had previously been deprecated in favour of start_form. Updated gitweb.perl accordingly.

Signed-off-by: Roland Mas <lolando@debian.org>
---
 gitweb/gitweb.perl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Show changes to gitweb/gitweb.perl +2 −2
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index a9f57d6..ccf7516 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -4100,7 +4100,7 @@ sub print_search_form {
 	if ($use_pathinfo) {
 		$action .= "/".esc_url($project);
 	}
-	print $cgi->startform(-method => "get", -action => $action) .
+	print $cgi->start_form(-method => "get", -action => $action) .
 	      "<div class=\"search\">\n" .
 	      (!$use_pathinfo &&
 	      $cgi->input({-name=>"p", -value=>$project, -type=>"hidden"}) . "\n") .
@@ -5510,7 +5510,7 @@ sub git_project_search_form {
 	}
 
 	print "<div class=\"projsearch\">\n";
-	print $cgi->startform(-method => 'get', -action => $my_uri) .
+	print $cgi->start_form(-method => 'get', -action => $my_uri) .
 	      $cgi->hidden(-name => 'a', -value => 'project_list')  . "\n";
 	print $cgi->hidden(-name => 'pf', -value => $project_filter). "\n"
 		if (defined $project_filter);
-- 
2.1.1
Junio C Hamano· Oct 16, 2014, 19:36 UTC · re: Roland Mas · lore

Re: [PATCH] Update gitweb.perl to current CGI.pm API

Looks sensible to me; Jakub, ack?
Roland Mas <lolando@debian.org> writes:
Show 55 quoted lines
> Hi all,
>
>   This simple two-line patch fixes a bug that makes gitweb unusable on
> systems where the installed CGI.pm is version 4.04 or later (such as on
> Debian unstable).  That version removed the startform method, which had
> previously been deprecated in favour of start_form since 2009.
>
>   I don't have any specific tests for that change, but it does help
> fixing the testsuite of FusionForge (which includes a test of its Git
> plugin, involving gitweb).
>
>   For reference, this is Debian bug #765525 (http://bugs.debian.org/765525).
>
>   (I'm not subscribed to the git@vger mailing-list; please Cc me on
> replies.)
>
>   Thanks,
>
> Roland.
>
> From 1b74cfb8568927a307f165e428455789398f6d61 Mon Sep 17 00:00:00 2001
> From: Roland Mas <lolando@debian.org>
> Date: Thu, 16 Oct 2014 00:05:25 +0200
> Subject: [PATCH] Update gitweb.perl to current CGI.pm API
>
> CGI.pm 4.04 removed the startform method, which had previously been
> deprecated in favour of start_form.  Updated gitweb.perl accordingly.
>
> Signed-off-by: Roland Mas <lolando@debian.org>
> ---
>  gitweb/gitweb.perl | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
> index a9f57d6..ccf7516 100755
> --- a/gitweb/gitweb.perl
> +++ b/gitweb/gitweb.perl
> @@ -4100,7 +4100,7 @@ sub print_search_form {
>  	if ($use_pathinfo) {
>  		$action .= "/".esc_url($project);
>  	}
> -	print $cgi->startform(-method => "get", -action => $action) .
> +	print $cgi->start_form(-method => "get", -action => $action) .
>  	      "<div class=\"search\">\n" .
>  	      (!$use_pathinfo &&
>  	      $cgi->input({-name=>"p", -value=>$project, -type=>"hidden"}) . "\n") .
> @@ -5510,7 +5510,7 @@ sub git_project_search_form {
>  	}
>  
>  	print "<div class=\"projsearch\">\n";
> -	print $cgi->startform(-method => 'get', -action => $my_uri) .
> +	print $cgi->start_form(-method => 'get', -action => $my_uri) .
>  	      $cgi->hidden(-name => 'a', -value => 'project_list')  . "\n";
>  	print $cgi->hidden(-name => 'pf', -value => $project_filter). "\n"
>  		if (defined $project_filter);
Junio C Hamano· Oct 16, 2014, 20:18 UTC · lore

Re: [PATCH] Update gitweb.perl to current CGI.pm API

Jakub Narębski <jnareb@gmail.com> writes:
Show 9 quoted lines
> On Thu, Oct 16, 2014 at 9:36 PM, Junio C Hamano <gitster@pobox.com> wrote:
>
>> Looks sensible to me; Jakub, ack?
>>
>
> Ack.
>
> Nb. this code follows back to original gitweb.cgi by Kay Sievers, very
> early in the development (2005)

Thanks. I realize that Ack sounds as if "Yeah, I acknowledge and admit I was in the wrong earlier", but I didn't mean "I think this is your bug---do you think it is a good fix?" I just meant the latter half of that sentence.

Here is what I'll queue (note: I've retitled so that an entry in "git shortlog" would mean something).

Thanks, both.
-- >8 --
From: Roland Mas <lolando@debian.org>
Subject: [PATCH] gitweb: use start_form, not startform that was removed in CGI.pm 4.04

CGI.pm 4.04 removed the startform method, which had previously been deprecated in favour of start_form. Changes file for CGI.pm says:

    4.04 2014-09-04
     [ REMOVED / DEPRECATIONS ]
	- startform and endform methods removed (previously deprecated,
	  you should be using the start_form and end_form methods)
Signed-off-by: Roland Mas <lolando@debian.org>
Reviewed-by: Jakub Narębski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 gitweb/gitweb.perl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Show changes to gitweb/gitweb.perl +2 −2
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index a9f57d6..ccf7516 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -4100,7 +4100,7 @@ sub print_search_form {
 	if ($use_pathinfo) {
 		$action .= "/".esc_url($project);
 	}
-	print $cgi->startform(-method => "get", -action => $action) .
+	print $cgi->start_form(-method => "get", -action => $action) .
 	      "<div class=\"search\">\n" .
 	      (!$use_pathinfo &&
 	      $cgi->input({-name=>"p", -value=>$project, -type=>"hidden"}) . "\n") .
@@ -5510,7 +5510,7 @@ sub git_project_search_form {
 	}
 
 	print "<div class=\"projsearch\">\n";
-	print $cgi->startform(-method => 'get', -action => $my_uri) .
+	print $cgi->start_form(-method => 'get', -action => $my_uri) .
 	      $cgi->hidden(-name => 'a', -value => 'project_list')  . "\n";
 	print $cgi->hidden(-name => 'pf', -value => $project_filter). "\n"
 		if (defined $project_filter);
-- 
2.1.2-561-gc401a55

← back to recent threads