git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] gitweb: Fix export check in git_get_projects_list

From
Jakub Narebski <jnareb@gmail.com>
Date
Dec 28, 2008, 02:12 UTC
Message-ID
<200812280312.02615.jnareb@gmail.com>
In-Reply-To
<a899d7ef0812270139u7dd28ee1q45a8c05f7c95db2f@mail.gmail.com>
On Sat, 27 Dec 2008, Devin Doucette wrote:
Show 8 quoted lines
> When $filter was empty, the path passed to check_export_ok would
> contain an extra '/', which some implementations of export_auth_hook
> are sensitive to.
> 
> It makes more sense to fix this here than to handle the special case
> in each implementation of export_auth_hook.
> 
> Signed-off-by: Devin Doucette <devin@doucette.cc>
Good catch. Thanks.
Acked-by: Jakub Narebski <jnareb@gmail.com>
Show 15 quoted lines
> ---
>  gitweb/gitweb.perl |    5 +++--
>  1 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
> index 8f574c7..99f71b4 100755
> --- a/gitweb/gitweb.perl
> +++ b/gitweb/gitweb.perl
> @@ -2147,8 +2147,9 @@ sub git_get_projects_list {
> 
>  				my $subdir = substr($File::Find::name, $pfxlen + 1);
>  				# we check related file in $projectroot
> -				if (check_export_ok("$projectroot/$filter/$subdir")) {
> -					push @list, { path => ($filter ? "$filter/" : '') . $subdir };
> +				my $path = ($filter ? "$filter/" : '') . $subdir;
Nice and clear, but wouldn't be better to use slightly more effective
+				my $path = $filter ? "$filter/$subdir" : $subdir;
Or even, taking care of the case when $filter eq '0'
+				my $path = defined $filter && $filter ne '' ? "$filter/$subdir" : $subdir;
Show 8 quoted lines
> +				if (check_export_ok("$projectroot/$path")) {
> +					push @list, { path => $path };
>  					$File::Find::prune = 1;
>  				}
>  			},
> -- 
> 1.6.1.rc4
> 
-- 
Jakub Narebski
Poland
Previous: Devin DoucetteNext: Junio C Hamano
Message 2 of 4 in “gitweb: Fix export check in git_get_projects_list”
  1. gitweb: Fix export check in git_get_projects_listDevin Doucette, Dec 27, 2008
  2. Jakub NarebskiDec 28, 2008
  3. Junio C HamanoDec 28, 2008
  4. Jakub NarebskiDec 29, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.