Delitifier broken (Re: diff-core segfault)
- From
Junio C Hamano <junkio@cox.net>
- Date
- Dec 12, 2005, 18:59 UTC
- Message-ID
- <7virtui1kj.fsf_-_@assigned-by-dhcp.cox.net>
- In-Reply-To
- <7vmzj6i206.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano <junkio@cox.net> writes:
Show 7 quoted lines
> Darrin Thompson <darrint@progeny.com> writes: > >> Could someone confirm that this exists on more recent git heads and fix >> if needed? > > (1) Yup. I can reproduce it. > (2) Will look into it when able.
This is not just "diff". Our deltify code is half-broken, and in the worst case this can corrupt our packs if an empty blob is involved.
The problem is if from_size or to_size is empty, it does not produce any.
if (!from_size || !to_size || delta_prepare(from_buf, from_size, &bdf))
return NULL;
I think either we need to make the users more careful or fix deltifier to produce trivial delta. I'd vote for the latter; let me rig up something.