commit 11db6024f7d98487225cb67a501c6b6ba06fc816 from: Stefan Sperling date: Mon Oct 21 13:17:31 2019 UTC show commit date's century in 'got blame' output (patch by Tracey Emery) tests adjusted by me commit - a926e3a4334151b10e2b78e1fa3f2a59a44c71f2 commit + 11db6024f7d98487225cb67a501c6b6ba06fc816 blob - 5639241ed852fec40a37bd8643d4b3c0a9f280f8 blob + a6420b5e5c54a7824b5cd5c7c2c0f0fa4ee841a2 --- got/got.c +++ got/got.c @@ -2391,7 +2391,7 @@ struct blame_line { int annotated; char *id_str; char *committer; - char datebuf[9]; /* YY-MM-DD + NUL */ + char datebuf[11]; /* YYYY-MM-DD + NUL */ }; struct blame_cb_args { @@ -2448,7 +2448,7 @@ blame_cb(void *arg, int nlines, int lineno, struct got committer_time = got_object_commit_get_committer_time(commit); if (localtime_r(&committer_time, &tm) == NULL) return got_error_from_errno("localtime_r"); - if (strftime(bline->datebuf, sizeof(bline->datebuf), "%g/%m/%d", + if (strftime(bline->datebuf, sizeof(bline->datebuf), "%G/%m/%d", &tm) >= sizeof(bline->datebuf)) { err = got_error(GOT_ERR_NO_SPACE); goto done; blob - 194bcdf0178508b25beca839c298348310aa4588 blob + 8f4e9a17dc61b16779b081d5713cbb26d0e6bcd9 --- regress/cmdline/blame.sh +++ regress/cmdline/blame.sh @@ -65,7 +65,7 @@ function test_blame_basic { local short_commit2=`trim_obj_id 32 $commit2` local short_commit3=`trim_obj_id 32 $commit3` - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "1) $short_commit1 $d $GOT_AUTHOR_8 1" > $testroot/stdout.expected echo "2) $short_commit2 $d $GOT_AUTHOR_8 2" >> $testroot/stdout.expected echo "3) $short_commit3 $d $GOT_AUTHOR_8 3" >> $testroot/stdout.expected @@ -113,7 +113,7 @@ function test_blame_tag { local short_commit1=`trim_obj_id 32 $commit1` local short_commit2=`trim_obj_id 32 $commit2` - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "1) $short_commit1 $d $GOT_AUTHOR_8 1" > $testroot/stdout.expected echo "2) $short_commit2 $d $GOT_AUTHOR_8 2" >> $testroot/stdout.expected @@ -149,7 +149,7 @@ function test_blame_file_single_line { local short_commit1=`trim_obj_id 32 $commit1` - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "1) $short_commit1 $d $GOT_AUTHOR_8 1" > $testroot/stdout.expected cmp -s $testroot/stdout.expected $testroot/stdout @@ -184,7 +184,7 @@ function test_blame_file_single_line_no_newline { local short_commit1=`trim_obj_id 32 $commit1` - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "1) $short_commit1 $d $GOT_AUTHOR_8 1" > $testroot/stdout.expected cmp -s $testroot/stdout.expected $testroot/stdout @@ -213,7 +213,7 @@ function test_blame_all_lines_replaced { (cd $testroot/wt && got blame alpha > $testroot/stdout) - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "1) $short_commit1 $d $GOT_AUTHOR_8 1" > $testroot/stdout.expected echo "2) $short_commit1 $d $GOT_AUTHOR_8 2" >> $testroot/stdout.expected echo "3) $short_commit1 $d $GOT_AUTHOR_8 3" >> $testroot/stdout.expected @@ -265,7 +265,7 @@ function test_blame_lines_shifted_up { (cd $testroot/wt && got blame alpha > $testroot/stdout) - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "1) $short_commit1 $d $GOT_AUTHOR_8 1" > $testroot/stdout.expected echo "2) $short_commit1 $d $GOT_AUTHOR_8 2" >> $testroot/stdout.expected echo "3) $short_commit3 $d $GOT_AUTHOR_8 foo" >> $testroot/stdout.expected @@ -321,7 +321,7 @@ function test_blame_lines_shifted_down { (cd $testroot/wt && got blame alpha > $testroot/stdout) - d=`date -r $author_time +"%g/%m/%d"` + d=`date -r $author_time +"%G/%m/%d"` echo "01) $short_commit1 $d $GOT_AUTHOR_8 1" \ > $testroot/stdout.expected echo "02) $short_commit1 $d $GOT_AUTHOR_8 2" \ @@ -394,7 +394,7 @@ EOF local commit1=`git_show_head $testroot/repo` local short_commit1=`trim_obj_id 32 $commit1` local author_time1=`git_show_author_time $testroot/repo` - local d1=`date -r $author_time1 +"%g/%m/%d"` + local d1=`date -r $author_time1 +"%G/%m/%d"` cat > $testroot/wt/alpha < $testroot/wt/alpha < $testroot/wt/alpha < $testroot/stdout)