summaryrefslogtreecommitdiff
path: root/entry.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-07-06 08:21:46 (GMT)
committerLinus Torvalds <torvalds@g5.osdl.org>2005-07-06 17:39:59 (GMT)
commitf312de018b48853d166040908b0ba2bf666e26c1 (patch)
treea1863bec8ca2a728502562baf933527e10b93609 /entry.c
parentb2cb94254be7bf8b44c851897dd29a00ce654e3c (diff)
downloadgit-f312de018b48853d166040908b0ba2bf666e26c1.zip
git-f312de018b48853d166040908b0ba2bf666e26c1.tar.gz
git-f312de018b48853d166040908b0ba2bf666e26c1.tar.bz2
[PATCH] Let umask do its work upon filesystem object creation.
IIRC our strategy was to let the users' umask take care of the final mode bits. This patch fixes places that deviate from it. Signed-off-by: Junio C Hamano <junkio@cox.net> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'entry.c')
-rw-r--r--entry.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/entry.c b/entry.c
index 874516e..ded8310 100644
--- a/entry.c
+++ b/entry.c
@@ -12,10 +12,10 @@ static void create_directories(const char *path, struct checkout *state)
len = slash - path;
memcpy(buf, path, len);
buf[len] = 0;
- if (mkdir(buf, 0755)) {
+ if (mkdir(buf, 0777)) {
if (errno == EEXIST) {
struct stat st;
- if (len > state->base_dir_len && state->force && !unlink(buf) && !mkdir(buf, 0755))
+ if (len > state->base_dir_len && state->force && !unlink(buf) && !mkdir(buf, 0777))
continue;
if (!stat(buf, &st) && S_ISDIR(st.st_mode))
continue; /* ok */