Re: [PATCH] index-pack: correctly initialize appended objects
- From
Shawn O. Pearce <spearce@spearce.org>
- Date
- Jul 25, 2008, 16:42 UTC
- Message-ID
- <20080725164202.GC21117@spearce.org>
- In-Reply-To
- <alpine.DEB.1.00.0807251513240.11976@eeepc-johanness>
Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
Show 22 quoted lines
> On Fri, 25 Jul 2008, Björn Steinbrink wrote: > > On 2008.07.24 22:21:14 -0700, Junio C Hamano wrote: > > > Reading get_data_from_pack(), it does rely on hdr_size, idx.offset and > > > idx.offset of the next entry to be set correctly. The function does > > > not seem to use type (which the patch is also setting) nor real_type > > > (which the patch does not set). > > > > type is used in get_base_data(). > > > > > However, the code checks objects[nth].real_type all over the place in > > > the code. Doesn't the lack of real_type assignment in > > > append_obj_to_pack() affect them in any way? > > > > I had thought that resolve_delta() would set that, but it seems that we > > never call that function like that. Hm... > > So, let's add the comment as Nico suggested, and set real_type, too? (And > it would be smashing if you could verify that the type is indeed correctly > set to non-delta...) > > I think that setting real_type is necessary to have less surprises when > the code is extended in the future.
The patch looks correct, but it should set real_type too because I'm pretty sure we use that when we unpack the delta base again if it was pruned out of memory.
-- Shawn.