Re: [PATCH 1/2] revision: use repository from rev_info when parsing commits
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 3, 2020, 21:58 UTC
- Message-ID
- <xmqqzh667ca4.fsf@gitster.c.googlers.com>
- In-Reply-To
- <88d8b24c-a0ae-bbbf-dd1f-5adb7a36ee95@gmail.com>
Derrick Stolee <stolee@gmail.com> writes:
Show 12 quoted lines
> On 6/23/2020 4:56 PM, Michael Forney wrote: >> This is needed when repo_init_revisions() is called with a repository >> that is not the_repository to ensure appropriate repository is used >> in repo_parse_commit_internal(). If the wrong repository is used, >> a fatal error is the commit-graph machinery occurs: >> >> fatal: invalid commit position. commit-graph is likely corrupt >> >> Since revision.c was the only user of the parse_commit_gently >> compatibility define, remove it from commit.h. > > Is this demonstrable in a test case, to prevent regressions?
It appears that Michael tried and failed. Even if we do not currently have a caller that asks these functions in revision.c to work on a repository that is not the primary one (i.e. in a submodule), in which case these patches may not be fixing any bug that can be triggered in the current code, it is quite obvious that these functions misbehave once a caller starts asking them to work on a repository other than the primary one.
So, given that ...
> > I counted 9 copies of parse_commit[_gently]() in my version > of revision.c, so it looks like you caught them all.
... we should be able to proceed with the code as-is, I guess.
Thanks.