aboutsummaryrefslogtreecommitdiff
path: root/index-pack.c
diff options
context:
space:
mode:
authorJohan Herland <johan@herland.net>2009-03-26 16:16:47 +0100
committerJunio C Hamano <gitster@pobox.com>2009-03-27 22:10:58 -0700
commitfb8b193670b0c11d118185332efc899d6d01d5f4 (patch)
tree1d25d46394067edd7833aeb70e714ebcbe6389c7 /index-pack.c
parent5a688fe4706462dfa0a7932ef0c82c335c47e9ab (diff)
downloadgit-fb8b193670b0c11d118185332efc899d6d01d5f4.tar.gz
git-fb8b193670b0c11d118185332efc899d6d01d5f4.tar.xz
Move chmod(foo, 0444) into move_temp_to_file()
When writing out a loose object or a pack (index), move_temp_to_file() is called to finalize the resulting file. These files (loose files and packs) should all have permission mode 0444 (modulo adjust_shared_perm()). Therefore, instead of doing chmod(foo, 0444) explicitly from each callsite (or even forgetting to chmod() at all), do the chmod() call from within move_temp_to_file(). Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'index-pack.c')
-rw-r--r--index-pack.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/index-pack.c b/index-pack.c
index 7fee87253..5dfe03ee6 100644
--- a/index-pack.c
+++ b/index-pack.c
@@ -823,8 +823,7 @@ static void final(const char *final_pack_name, const char *curr_pack_name,
}
if (move_temp_to_file(curr_pack_name, final_pack_name))
die("cannot store pack file");
- }
- if (from_stdin)
+ } else if (from_stdin)
chmod(final_pack_name, 0444);
if (final_index_name != curr_index_name) {
@@ -835,8 +834,8 @@ static void final(const char *final_pack_name, const char *curr_pack_name,
}
if (move_temp_to_file(curr_index_name, final_index_name))
die("cannot store index file");
- }
- chmod(final_index_name, 0444);
+ } else
+ chmod(final_index_name, 0444);
if (!from_stdin) {
printf("%s\n", sha1_to_hex(sha1));