diff options
author | Junio C Hamano <gitster@pobox.com> | 2017-03-21 15:07:17 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2017-03-21 15:07:17 -0700 |
commit | 45cbc37c5f84fadd78cccf6b2ea82a9ef251cdc6 (patch) | |
tree | 279382ccc172caff7ccd76eb2f0743619063597f /fast-import.c | |
parent | e15b9606557d590e1cdc1e3b1b9154cce455a4c8 (diff) | |
parent | f20754802a280c57a1e5886605b6805bbf040c63 (diff) | |
download | git-45cbc37c5f84fadd78cccf6b2ea82a9ef251cdc6.tar.gz |
Merge branch 'jk/pack-name-cleanups'
Code clean-up.
* jk/pack-name-cleanups:
index-pack: make pointer-alias fallbacks safer
replace snprintf with odb_pack_name()
odb_pack_keep(): stop generating keepfile name
sha1_file.c: make pack-name helper globally accessible
move odb_* declarations out of git-compat-util.h
Diffstat (limited to 'fast-import.c')
-rw-r--r-- | fast-import.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/fast-import.c b/fast-import.c index 6c13472c42..41a539f97d 100644 --- a/fast-import.c +++ b/fast-import.c @@ -940,41 +940,40 @@ static const char *create_index(void) static char *keep_pack(const char *curr_index_name) { - static char name[PATH_MAX]; static const char *keep_msg = "fast-import"; + struct strbuf name = STRBUF_INIT; int keep_fd; - keep_fd = odb_pack_keep(name, sizeof(name), pack_data->sha1); + odb_pack_name(&name, pack_data->sha1, "keep"); + keep_fd = odb_pack_keep(name.buf); if (keep_fd < 0) die_errno("cannot create keep file"); write_or_die(keep_fd, keep_msg, strlen(keep_msg)); if (close(keep_fd)) die_errno("failed to write keep file"); - snprintf(name, sizeof(name), "%s/pack/pack-%s.pack", - get_object_directory(), sha1_to_hex(pack_data->sha1)); - if (finalize_object_file(pack_data->pack_name, name)) + odb_pack_name(&name, pack_data->sha1, "pack"); + if (finalize_object_file(pack_data->pack_name, name.buf)) die("cannot store pack file"); - snprintf(name, sizeof(name), "%s/pack/pack-%s.idx", - get_object_directory(), sha1_to_hex(pack_data->sha1)); - if (finalize_object_file(curr_index_name, name)) + odb_pack_name(&name, pack_data->sha1, "idx"); + if (finalize_object_file(curr_index_name, name.buf)) die("cannot store index file"); free((void *)curr_index_name); - return name; + return strbuf_detach(&name, NULL); } static void unkeep_all_packs(void) { - static char name[PATH_MAX]; + struct strbuf name = STRBUF_INIT; int k; for (k = 0; k < pack_id; k++) { struct packed_git *p = all_packs[k]; - snprintf(name, sizeof(name), "%s/pack/pack-%s.keep", - get_object_directory(), sha1_to_hex(p->sha1)); - unlink_or_warn(name); + odb_pack_name(&name, p->sha1, "keep"); + unlink_or_warn(name.buf); } + strbuf_release(&name); } static int loosen_small_pack(const struct packed_git *p) @@ -1033,6 +1032,7 @@ static void end_packfile(void) die("core git rejected index %s", idx_name); all_packs[pack_id] = new_p; install_packed_git(new_p); + free(idx_name); /* Print the boundary */ if (pack_edges) { |