[PATCH 3/6] Make diff -w handle trailing-spaces on incomplete lines.
From: Thell Fowler <hidden>
Date: 2016-06-15 22:47:17
- When processing trailing spaces with --ignore-all-space a diff
would be found whenever one side had 0 spaces and either (or both)
sides was an incomplete line. xdl_recmatch should process the
full length of the record instead of assuming both sides have a
terminator.
Signed-off-by: Thell Fowler <redacted>
---
xdiff/xutils.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/xdiff/xutils.c b/xdiff/xutils.c
index c6512a53b08a8c9039614738310aa2786f4fbb1c..1f28f4fb4e0a8fdc6c9aa1904cf0362dd1e7b977 100644
--- a/xdiff/xutils.c
+++ b/xdiff/xutils.c@@ -191,14 +191,14 @@ int xdl_recmatch(const char *l1, long s1, const char *l2, long s2, long flags) int i1, i2; if (flags & XDF_IGNORE_WHITESPACE) { - for (i1 = i2 = 0; i1 < s1 && i2 < s2; ) { + for (i1 = i2 = 0; i1 <= s1 && i2 <= s2; ) { if (isspace(l1[i1])) - while (isspace(l1[i1]) && i1 < s1) + while (isspace(l1[i1]) && i1 <= s1) i1++; if (isspace(l2[i2])) - while (isspace(l2[i2]) && i2 < s2) + while (isspace(l2[i2]) && i2 <= s2) i2++; - if (i1 < s1 && i2 < s2 && l1[i1++] != l2[i2++]) + if (i1 <= s1 && i2 <= s2 && l1[i1++] != l2[i2++]) return 0; } return (i1 >= s1 && i2 >= s2);
--
1.6.4.172.g5c0d0.dirty