diff options
author | Felipe Contreras <felipe.contreras@gmail.com> | 2009-01-14 03:37:07 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2009-01-13 22:57:12 -0800 |
commit | 3d1d81eba29d5cfc5b214dc049b743ffbe032ef4 (patch) | |
tree | 32bdd4df2903dd3a8e864cf446624dd4d3429e53 | |
parent | 8faea4f3b2f68a6ef168c6ada1627835380a570d (diff) | |
download | git-3d1d81eba29d5cfc5b214dc049b743ffbe032ef4.tar.gz git-3d1d81eba29d5cfc5b214dc049b743ffbe032ef4.tar.xz |
fast-import: Cleanup mode setting.
"S_IFREG | mode" makes only sense for 0644 and 0755.
Even though doing (S_IFREG | mode) may not hurt when mode is any other
supported value, that is only true because S_IFREG mode bit happens to
be already on for S_IFLNK or S_IFGITLINK.
Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Acked-by: Shawn O. Pearce <spearce@spearce.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | fast-import.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fast-import.c b/fast-import.c index d58cca58e..6d5ee6f46 100644 --- a/fast-import.c +++ b/fast-import.c @@ -1868,12 +1868,13 @@ static void file_change_m(struct branch *b) if (!p) die("Corrupt mode: %s", command_buf.buf); switch (mode) { + case 0644: + case 0755: + mode |= S_IFREG; case S_IFREG | 0644: case S_IFREG | 0755: case S_IFLNK: case S_IFGITLINK: - case 0644: - case 0755: /* ok */ break; default: @@ -1940,7 +1941,7 @@ static void file_change_m(struct branch *b) typename(type), command_buf.buf); } - tree_content_set(&b->branch_tree, p, sha1, S_IFREG | mode, NULL); + tree_content_set(&b->branch_tree, p, sha1, mode, NULL); } static void file_change_d(struct branch *b) |