]> git.ipfire.org Git - thirdparty/git.git/commit - sha1_file.c
Clear the delta base cache if a pack is rebuilt
authorShawn O. Pearce <spearce@spearce.org>
Wed, 11 Feb 2009 18:15:30 +0000 (10:15 -0800)
committerJunio C Hamano <gitster@pobox.com>
Wed, 11 Feb 2009 18:25:24 +0000 (10:25 -0800)
commitfa3a0c94dc88567b513e58835e5915f87da40af9
tree2190019be95e90d1d708836e4834e2a96a2a3545
parent3d20c636af05c44a6ff4df9309c2bca108ee149b
Clear the delta base cache if a pack is rebuilt

There is some risk that re-opening a regenerated pack file with
different offsets could leave stale entries within the delta base
cache that could be matched up against other objects using the same
"struct packed_git*" and pack offset.

Throwing away the entire delta base cache in this case is safer,
as we don't have to worry about a recycled "struct packed_git*"
matching to the wrong base object, resulting in delta apply
errors while unpacking an object.

Suggested-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
sha1_file.c