diff options
author | Jeff King <peff@peff.net> | 2016-07-29 00:06:48 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-07-29 11:05:06 -0700 |
commit | 3157c880f6afab26af4f3e4eaceee68fc1b482a8 (patch) | |
tree | c2b5a793d19e84866a249000bfe4d78259964d47 /cache.h | |
parent | t/perf: add tests for many-pack scenarios (diff) | |
download | tgif-3157c880f6afab26af4f3e4eaceee68fc1b482a8.tar.xz |
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 'cache.h')
-rw-r--r-- | cache.h | 1 |
1 files changed, 0 insertions, 1 deletions
@@ -1410,7 +1410,6 @@ extern unsigned char *use_pack(struct packed_git *, struct pack_window **, off_t extern void close_pack_windows(struct packed_git *); extern void close_all_packs(void); extern void unuse_pack(struct pack_window **); -extern void free_pack_by_name(const char *); extern void clear_delta_base_cache(void); extern struct packed_git *add_packed_git(const char *path, size_t path_len, int local); |