On Linux, in a VFAT file systems, there are 5 more test failures (other than the ones related to hard links and symbolic links):
FAIL: file-create-modes ======================= [36] patch -p1 < f.diff -- ok [41] ls -l f g | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1,2 +1,2 @@ --rwx--x--- --rw-r-xr-- +-rwx------ +-rwx------ [46] patch -p1 -R < f.diff -- ok [51] ! test -e f -o -e g || echo fail -- ok 4 tests (3 passed, 1 failed) FAIL file-create-modes (exit status: 1) FAIL: file-modes ================ [45] patch -p1 < f.diff -- ok [50] ls -l f g | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1,2 +1,2 @@ --rw------- --rw------- +-rwx------ +-rwx------ [55] patch -p1 -R < f.diff -- ok [60] ls -l f g | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1,2 +1,2 @@ --rw-r--r-- --rw-r--r-- +-rwx------ +-rwx------ [78] patch -p1 < g.diff || echo "Status: $?" -- ok [83] ls -l f g | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1,2 +1,2 @@ --rw------- --rw------- +-rwx------ +-rwx------ 6 tests (3 passed, 3 failed) FAIL file-modes (exit status: 1) FAIL: no-mode-change-git-diff ============================= [28] patch -p1 < simple.diff || echo "Status: $?" -- ok [32] ls -l f | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1 +1 @@ --rwxr-xr-x +-rwx------ 2 tests (1 passed, 1 failed) FAIL no-mode-change-git-diff (exit status: 1) FAIL: preserve-mode-and-timestamp ================================= [45] patch -p1 --backup --set-utc < f.diff -- ok [55] test ! \( f -ot f.compare -o f -nt f.compare \) || echo "timestamp differs" -- ok [60] ls -l f.orig | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1 +1 @@ --rw-r--r-- +-rwx------ [73] patch -p1 --backup --set-utc < f.diff || echo "Status: $?" -- ok [81] ls -l f.rej | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1 +1 @@ --rw-r--r-- +-rwx------ [94] patch -p1 --backup --set-utc < f.diff || echo "Status: $?" -- ok [102] ls -l f.rej | sed "s,\(..........\).*,\1," -- FAILED --- expected +++ got @@ -1 +1 @@ --rw-r----- +-rwx------ [117] patch -p1 --backup --set-utc < f.diff -- ok [121] test ! \( f -ot f.compare -o f -nt f.compare \) || echo "timestamp differs" -- ok 9 tests (6 passed, 3 failed) FAIL preserve-mode-and-timestamp (exit status: 1) FAIL: quoted-filenames ====================== [28] echo one > " " -- FAILED --- expected +++ got @@ -1 +1 @@ - +./test-lib.sh: line 73: : Invalid argument [29] patch -s -p0 < d.diff -- FAILED --- expected +++ got @@ -1 +1,8 @@ - +The text leading up to this was: +-------------------------- +|--- "\t \040" +|+++ "\t \040" +-------------------------- +File to patch: +Skip this patch? [y] +1 out of 1 hunk ignored [31] cat " " -- FAILED --- expected +++ got @@ -1 +1 @@ -two +cat: ''$'\t'' ': No such file or directory [44] patch -f < e.diff; echo status: $? -- ok 4 tests (1 passed, 3 failed) FAIL quoted-filenames (exit status: 1)
