Re: [PATCH] Avoid errors from git-rev-parse in gitweb blame

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Cc-ed Luben Tuikov, author of this part.

Rafael Garcia-Suarez <rgarciasuarez@xxxxxxxxx> writes:

> git-rev-parse will abort with an error when passed a non-existent
> revision spec, such as "deadbeef^" where deadbeef has no parent.
> Using the --revs-only parameter makes this error go away, while
> retaining functionality, keeping the web server error log nice
> and clean.

Thanks.  This error wasn't detected earlier probably because
'blame' view is rarely enabled; and repo.or.cz gitweb which has
'blame' enabled IIRC use gitweb which is modified there, allowing
incremental blame using AJAX.

> diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
> index 55fb100..f3b4b24 100755
> --- a/gitweb/gitweb.perl
> +++ b/gitweb/gitweb.perl
> @@ -4226,9 +4226,9 @@ git_blame2
>  			              esc_html($rev));
>  			print "</td>\n";
>  		}
> -		open (my $dd, "-|", git_cmd(), "rev-parse", "$full_rev^")
> +		open (my $dd, "-|", git_cmd(), "rev-parse", '--revs-only', "$full_rev^")
>  			or die_error(undef, "Open git-rev-parse failed");
> -		my $parent_commit = <$dd>;
> +		my $parent_commit = <$dd> || '';
>  		close $dd;
>  		chomp($parent_commit);
>  		my $blamed = href(action => 'blame',

I'd rather remove this, correct it, or make it optional (this is very
fork-heavy).

But this patch is good as it is now...
-- 
Jakub Narebski
Poland
ShadeHawk on #git
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux