[PATCH] Fix git-diff-files for symlinks.
Again I am not sure why this was missed during the last round,
but git-diff-files mishandles symlinks on the filesystem. This
patch fixes it.
Signed-off-by: Junio C Hamano <junkio@cox.net>
And I'm not sure why did I miss this patch before. Sorry.
Signed-off-by: Petr Baudis <pasky@ucw.cz>
diff --git a/diff-files.c b/diff-files.c
index c51edc3..28f1b13 100644
--- a/diff-files.c
+++ b/diff-files.c
@@ -126,7 +126,8 @@
continue;
oldmode = ntohl(ce->ce_mode);
- mode = S_IFREG | ce_permissions(st.st_mode);
+ mode = (S_ISLNK(st.st_mode) ? S_IFLNK :
+ S_IFREG | ce_permissions(st.st_mode));
show_modified(oldmode, mode, ce->sha1, null_sha1,
ce->name);