summaryrefslogtreecommitdiff
path: root/pack-write.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2016-07-29 04:06:48 (GMT)
committerJunio C Hamano <gitster@pobox.com>2016-07-29 18:05:06 (GMT)
commit3157c880f6afab26af4f3e4eaceee68fc1b482a8 (patch)
treec2b5a793d19e84866a249000bfe4d78259964d47 /pack-write.c
parent77023ea3c3951be97286bc241ae88bc6c860e2b7 (diff)
downloadgit-3157c880f6afab26af4f3e4eaceee68fc1b482a8.zip
git-3157c880f6afab26af4f3e4eaceee68fc1b482a8.tar.gz
git-3157c880f6afab26af4f3e4eaceee68fc1b482a8.tar.bz2
sha1_file: drop free_pack_by_name
The point of this function is to drop an entry from the "packed_git" cache that points to a file we might be overwriting, because our contents may not be the same (and hence the only caller was pack-objects as it moved a temporary packfile into place). In older versions of git, this could happen because the names of packfiles were derived from the set of objects they contained, not the actual bits on disk. But since 1190a1a (pack-objects: name pack files after trailer hash, 2013-12-05), the name reflects the actual bits on disk, and any two packfiles with the same name can be used interchangeably. Dropping this function not only saves a few lines of code, it makes the lifetime of "struct packed_git" much easier to reason about: namely, we now do not ever free these structs. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'pack-write.c')
-rw-r--r--pack-write.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/pack-write.c b/pack-write.c
index 33293ce..ea0b788 100644
--- a/pack-write.c
+++ b/pack-write.c
@@ -354,7 +354,6 @@ void finish_tmp_packfile(struct strbuf *name_buffer,
die_errno("unable to make temporary index file readable");
strbuf_addf(name_buffer, "%s.pack", sha1_to_hex(sha1));
- free_pack_by_name(name_buffer->buf);
if (rename(pack_tmp_name, name_buffer->buf))
die_errno("unable to rename temporary pack file");