Dear diff developers,
an issue related to the way diff compares directories that contain
device nodes has been reported in <https://bugs.debian.org/929896>.
In a nutshell, identical device nodes are reported as different, but
only during recursive comparisons (`-r`).
The following steps can reproduce this issue:
$ mkdir a; sudo mknod a/null c 1 3
$ sleep 1
$ mkdir b; sudo mknod b/null c 1 3
$ diff a/null b/null ; echo $?
0
$ diff -r a b ; echo $?
File a/null is a character special file while file
b/null is a character special file
1
(Device 1/3 is the null character device, i.e. `/dev/null`.)
Removing the `sleep 1` command reduces (but does not eliminate) the
probability of getting this faulty behavior.
Regards,
--
Gioele Barabucci