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

Re: [PATCH v2] blame: avoid checking if a file exists on the working tree if a revision is provided

From
Eric Sunshine <sunshine@sunshineco.com>
Date
Nov 17, 2015, 23:01 UTC
Message-ID
<CAPig+cQcmtZJmm_FGMNL4OCTgdFZGyLjVrwbfCCp+0kwBeFuRQ@mail.gmail.com>
In-Reply-To
<20151117224809.GE27862@sigill.intra.peff.net>
On Tue, Nov 17, 2015 at 5:48 PM, Jeff King <peff@peff.net> wrote:
Show 16 quoted lines
> On Tue, Nov 17, 2015 at 12:11:25AM -0500, Eric Sunshine wrote:
>> > blame content even if the path provided does match an existing
>> > blob on said revision.
>>
>> git-blame documentation does not advertise "blame <file> <rev>" as a
>> valid invocation. It does advertise "blame <rev> -- <file>", and this
>> case already works correctly even when <file> does not exist in the
>> worktree.
>
> Hmm. Out of curiosity I tried:
>
>   git blame v2.4.0 -- t/t6031-merge-recursive.sh
>
> and it segfaults. This bisects to Max's recent 1b0d400 (blame: extract
> find_single_final, 2015-10-30), but I do not see anything obviously
> wrong with it from a quick glance.

In the original code, sb->final received was assigned value of obj, which may have gone through deref_tag(), however, after 1b0d400, sb->final is unconditionally assigned the original value of obj, not the (potentially) deref'd value.

Previous: Stefan BellerNext: Jeff King
Message 5 of 9 in “blame: avoid checking if a file exists on the working tree if a revision is provided”
  1. blame: avoid checking if a file exists on the working tree if a revision is providedEdmundo Carmona Antoranz, Nov 17, 2015
  2. Eric SunshineNov 17, 2015
  3. Jeff KingNov 17, 2015
  4. Stefan BellerNov 17, 2015
  5. Eric SunshineNov 17, 2015
  6. Jeff KingNov 17, 2015
  7. Eric SunshineNov 20, 2015
  8. Edmundo Carmona AntoranzNov 17, 2015
  9. Edmundo Carmona AntoranzNov 17, 2015

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.