Re: fatal error when diffing changed symlinks
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Mar 7, 2017, 22:34 UTC
- Message-ID
- <alpine.DEB.2.20.1703072332370.3767@virtualbox>
- In-Reply-To
- <xmqqfuip7y07.fsf@gitster.mtv.corp.google.com>
Hi Junio,
On Tue, 7 Mar 2017, Junio C Hamano wrote:
Show 31 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
>
> >> > When viewing a working tree file, oid.hash could be 0{40} and
> >> > read_sha1_file() is not the right function to use to obtain the
> >> > contents.
> >> >
> >> > Both of these two need to pay attention to 0{40}, I think, as the
> >> > user may be running "difftool -R --dir-diff" in which case the
> >> > working tree would appear in the left hand side instead.
> >>
> >> As a side note, I think even outside of 0{40}, this should be checking
> >> the return value of read_sha1_file(). A corrupted repo should die(), not
> >> segfault.
> >
> > I agree. I am on it.
>
> Friendly ping, if only to make sure that we can keep a piece of this
> thread in the more "recent" pile.
>
> If you have other topics you need to perfect, I think it is OK to
> postpone the fix on this topic a bit longer, but I'd hate to ship
> two releases with a known breakage without an attempt to fix it, so
> if you are otherwise occupied, I may encourage others (including me)
> to take a look at this. The new "difftool" also has a reported
> regression somebody else expressed willingness to work on, which is
> sort of blocked by everybody else not knowing the timeline on this
> one. cf. <20170303212836.GB13790@arch-attack.localdomain>
>
> A patch series would be very welcome, but "Please go ahead if
> somebody else has time, and I'll help reviewing" would be also
> good.Unfortunately, the obvious fix was not enough. My current work in progress is in the `difftool-null-sha1` branch on https://gihub.com/dscho/git. I still have a few other things to tend to, but hope to come back to the difftool before the end of the week.
Ciao, Johannes