GNU bug report logs -
#24154
bug in 'diff -B'
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 24154 in the body.
You can then email your comments to 24154 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-diffutils <at> gnu.org
:
bug#24154
; Package
diffutils
.
(Thu, 04 Aug 2016 22:23:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
"Zieg, Mark (KSC-ESC-624)[VENCORE-ESC]" <mark.zieg <at> nasa.gov>
:
New bug report received and forwarded. Copy sent to
bug-diffutils <at> gnu.org
.
(Thu, 04 Aug 2016 22:23:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello,
When diffing an empty file against a one-byte file using -B (--ignore-blank-lines), diff incorrectly reports that the files are identical, even though they aren't even the same size. The problem does not occur with files of 2 bytes or longer. I tested this with diffutils 2.8, 3.2 and 3.3.
How to reproduce:
# create a one-byte file "foo"
deedwl262 [~/work/test] mzieg 09:17 PM $ echo -n x > foo
# create a zero-byte file "bar"
deedwl262 [~/work/test] mzieg 09:17 PM $ echo -n > bar
# confirm file sizes
deedwl262 [~/work/test] mzieg 09:18 PM $ ls -la
-rw-rw-r-- 1 mzieg unixusers 0 Aug 4 21:18 bar
-rw-rw-r-- 1 mzieg unixusers 1 Aug 4 21:17 foo
# verify "diff" works as expected
deedwl262 [~/work/test] mzieg 09:18 PM $ diff foo bar
1d0
< x
\ No newline at end of file
# verify "diff -w" works as expected
deedwl262 [~/work/test] mzieg 09:18 PM $ diff -w foo bar
1d0
< x
\ No newline at end of file
# verify "diff -b" works as expected
deedwl262 [~/work/test] mzieg 09:18 PM $ diff -b foo bar
1d0
< x
\ No newline at end of file
# HERE IS THE PROBLEM: diff -B does NOT work as expected
deedwl262 [~/work/test] mzieg 09:18 PM $ diff -B foo bar
# change "foo" to a 2-byte file
deedwl262 [~/work/test] mzieg 09:18 PM $ echo -n xy > foo
# now "diff -B" works as expected
deedwl262 [~/work/test] mzieg 09:19 PM $ diff -B foo bar
1d0
< xy
\ No newline at end of file
Regards,
Mark Zieg
mark <at> zieg.com
Reply sent
to
Jim Meyering <jim <at> meyering.net>
:
You have taken responsibility.
(Thu, 04 Aug 2016 23:32:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
"Zieg, Mark (KSC-ESC-624)[VENCORE-ESC]" <mark.zieg <at> nasa.gov>
:
bug acknowledged by developer.
(Thu, 04 Aug 2016 23:32:02 GMT)
Full text and
rfc822 format available.
Message #10 received at 24154-done <at> debbugs.gnu.org (full text, mbox):
On Thu, Aug 4, 2016 at 2:43 PM, Zieg, Mark (KSC-ESC-624)[VENCORE-ESC]
<mark.zieg <at> nasa.gov> wrote:
> When diffing an empty file against a one-byte file using -B (--ignore-blank-lines), diff incorrectly reports that the files are identical, even though they aren't even the same size. The problem does not occur with files of 2 bytes or longer. I tested this with diffutils 2.8, 3.2 and 3.3.
...
> # HERE IS THE PROBLEM: diff -B does NOT work as expected
> deedwl262 [~/work/test] mzieg 09:18 PM $ diff -B foo bar
Thank you for the report. I confirm it was a problem with diffutils-3.3:
$ /usr/bin/diff --version|head -1
diff (GNU diffutils) 3.3
$ printf 1 > 1; : > 0; /usr/bin/diff -B 0 1
$ printf 1 > 1; : > 0; /usr/bin/diff -B 1 0
$
It was fixed with this commit, which will be part of the imminent
diffutils-3.4 release:
commit d2fd9d4683ef60c259a3b426f71cef1b89ff383d
Author: Paul Eggert <eggert <at> cs.ucla.edu>
Date: Wed Sep 3 15:58:03 2014 -0700
diff: fix bug with diff -B and incomplete lines
Reported by Navin Kabra via Eric Blake in:
http://bugs.gnu.org/18402
* src/util.c (analyze_hunk): Don't mishandle incomplete
lines at end of file.
* tests/no-newline-at-eof: Test for the bug.
So I've marked this auto-created "issue" as resolved.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 02 Sep 2016 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 9 years and 5 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.