aboutsummaryrefslogtreecommitdiff
path: root/diff.c
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2007-04-15 14:35:11 -0700
committerJunio C Hamano <junkio@cox.net>2007-04-15 14:35:11 -0700
commit40250af411f33afa0c39a5d461829b676453ce3b (patch)
tree0530d85b4a658ecd9c512ce44cea1ceabcd35d98 /diff.c
parent201ac8efc79668353281583629aa15ac7f36e843 (diff)
downloadgit-40250af411f33afa0c39a5d461829b676453ce3b.tar.gz
git-40250af411f33afa0c39a5d461829b676453ce3b.tar.xz
Fix 'diff' attribute semantics.
This is in the same spirit as the previous one. Earlier 'diff' meant 'do the built-in binary heuristics and disable patch text generation based on it' while '!diff' meant 'do not guess, do not generate patch text'. There was no way to say 'do generate patch text even when the heuristics says it has NUL in it'. Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'diff.c')
-rw-r--r--diff.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/diff.c b/diff.c
index e4efb657e..dcea405ed 100644
--- a/diff.c
+++ b/diff.c
@@ -1069,8 +1069,9 @@ static int file_is_binary(struct diff_filespec *one)
setup_diff_attr_check(&attr_diff_check);
if (!git_checkattr(one->path, 1, &attr_diff_check) &&
- (0 == attr_diff_check.isset))
- return 1;
+ (0 <= attr_diff_check.isset))
+ return !attr_diff_check.isset;
+
if (!one->data) {
if (!DIFF_FILE_VALID(one))
return 0;