svn commit: r315985 - in head/usr.bin/diff: . tests
Jilles Tjoelker
jilles at FreeBSD.org
Sun Mar 26 14:09:27 UTC 2017
Author: jilles
Date: Sun Mar 26 14:09:25 2017
New Revision: 315985
URL: https://svnweb.freebsd.org/changeset/base/315985
Log:
diff: Fix mtime of file1 in -u/-c header line.
PR: 218018
Reviewed by: bapt
Differential Revision: https://reviews.freebsd.org/D10140
Added:
head/usr.bin/diff/tests/header.out (contents, props changed)
Modified:
head/usr.bin/diff/diffreg.c
head/usr.bin/diff/tests/Makefile
head/usr.bin/diff/tests/diff_test.sh
Modified: head/usr.bin/diff/diffreg.c
==============================================================================
--- head/usr.bin/diff/diffreg.c Sun Mar 26 13:03:16 2017 (r315984)
+++ head/usr.bin/diff/diffreg.c Sun Mar 26 14:09:25 2017 (r315985)
@@ -1614,7 +1614,7 @@ print_header(const char *file1, const ch
char buf2[256];
char end1[10];
char end2[10];
- struct tm *tm_ptr1, *tm_ptr2;
+ struct tm tm1, tm2, *tm_ptr1, *tm_ptr2;
int nsec1 = TIMESPEC_NS (stb1.st_mtime);
int nsec2 = TIMESPEC_NS (stb2.st_mtime);
@@ -1626,8 +1626,8 @@ print_header(const char *file1, const ch
if (cflag)
time_format = "%c";
- tm_ptr1 = localtime(&stb1.st_mtime);
- tm_ptr2 = localtime(&stb2.st_mtime);
+ tm_ptr1 = localtime_r(&stb1.st_mtime, &tm1);
+ tm_ptr2 = localtime_r(&stb2.st_mtime, &tm2);
strftime(buf1, 256, time_format, tm_ptr1);
strftime(buf2, 256, time_format, tm_ptr2);
if (!cflag) {
Modified: head/usr.bin/diff/tests/Makefile
==============================================================================
--- head/usr.bin/diff/tests/Makefile Sun Mar 26 13:03:16 2017 (r315984)
+++ head/usr.bin/diff/tests/Makefile Sun Mar 26 14:09:25 2017 (r315985)
@@ -19,7 +19,8 @@ ${PACKAGE}FILES+= \
simple_p.out \
unified_p.out \
unified_c9999.out \
- unified_9999.out
+ unified_9999.out \
+ header.out
NETBSD_ATF_TESTS_SH+= netbsd_diff_test
Modified: head/usr.bin/diff/tests/diff_test.sh
==============================================================================
--- head/usr.bin/diff/tests/diff_test.sh Sun Mar 26 13:03:16 2017 (r315984)
+++ head/usr.bin/diff/tests/diff_test.sh Sun Mar 26 14:09:25 2017 (r315985)
@@ -2,6 +2,7 @@
atf_test_case simple
atf_test_case unified
+atf_test_case header
simple_body()
{
@@ -46,8 +47,20 @@ unified_body()
diff -u9999 -L input_c1.in -L input_c2.in "$(atf_get_srcdir)/input_c1.in" "$(atf_get_srcdir)/input_c2.in"
}
+header_body()
+{
+ export TZ=UTC
+ : > empty
+ echo hello > hello
+ touch -d 2015-04-03T01:02:03 empty
+ touch -d 2016-12-22T11:22:33 hello
+ atf_check -o "file:$(atf_get_srcdir)/header.out" -s eq:1 \
+ diff -u empty hello
+}
+
atf_init_test_cases()
{
atf_add_test_case simple
atf_add_test_case unified
+ atf_add_test_case header
}
Added: head/usr.bin/diff/tests/header.out
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/usr.bin/diff/tests/header.out Sun Mar 26 14:09:25 2017 (r315985)
@@ -0,0 +1,4 @@
+--- empty 2015-04-03 01:02:03.000000000 +0000
++++ hello 2016-12-22 11:22:33.000000000 +0000
+@@ -0,0 +1 @@
++hello
More information about the svn-src-head
mailing list