Re: fatal error when diffing changed symlinks
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Mar 7, 2017, 18:16 UTC
- Message-ID
- <xmqqfuip7y07.fsf@gitster.mtv.corp.google.com>
- In-Reply-To
- <alpine.DEB.2.20.1702251336420.3767@virtualbox>
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
Show 13 quoted lines
>> > 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.
Thanks.