summaryrefslogtreecommitdiff
path: root/diff.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2008-10-26 04:46:21 (GMT)
committerJunio C Hamano <gitster@pobox.com>2008-10-26 21:09:48 (GMT)
commit2675773af893ae81f9b09f18c1f2ec86ca2158e7 (patch)
tree8f0fed7f4cbfb7f74804c574e698079899906fea /diff.c
parentc7534ef4a12bb44806d522fc8e3961e390f9169b (diff)
downloadgit-2675773af893ae81f9b09f18c1f2ec86ca2158e7.zip
git-2675773af893ae81f9b09f18c1f2ec86ca2158e7.tar.gz
git-2675773af893ae81f9b09f18c1f2ec86ca2158e7.tar.bz2
only textconv regular files
We treat symlinks as text containing the results of the symlink, so it doesn't make much sense to text-convert them. Similarly gitlink components just end up as the text "Subproject commit $sha1", which we should leave intact. Note that a typechange may be broken into two parts: the removal of the old part and the addition of the new. In that case, we _do_ show the textconv for any part which is the addition or removal of a file we would ordinarily textconv, since it is purely acting on the file contents. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'diff.c')
-rw-r--r--diff.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/diff.c b/diff.c
index 608223a..23d454e 100644
--- a/diff.c
+++ b/diff.c
@@ -1311,6 +1311,8 @@ static const char *get_textconv(struct diff_filespec *one)
{
if (!DIFF_FILE_VALID(one))
return NULL;
+ if (!S_ISREG(one->mode))
+ return NULL;
diff_filespec_load_driver(one);
return one->driver->textconv;
}