I caught this while working with MobaXterm, but managed to reproduce a simpler case in the Live BusyBox page (http://www.busybox.net/live_bbox/live_bbox.html): / # cd tmp/ /tmp # mkdir a /tmp # mkdir b /tmp # mkdir a/x /tmp # mkdir a/y /tmp # mkdir b/y /tmp # diff -r a b /tmp # Compared to the output in the latest CentOS, for example: [root@localhost ~]# cd /tmp/ [root@localhost tmp]# mkdir a [root@localhost tmp]# mkdir b [root@localhost tmp]# mkdir a/x [root@localhost tmp]# mkdir a/y [root@localhost tmp]# mkdir b/y [root@localhost tmp]# diff -r a b Only in a: x [root@localhost tmp]#
works normal on 1.24
(In reply to comment #1) > works normal on 1.24 Oh.. now.. I was testing not busybox diff ;(
This problem still exists in busybox 1.31.1
The exit status is still set to "1" as it should be, so it's really only the message that is missing.
Created attachment 9016 [details] add directories to the directory listing if -r flag was set, but -N was not This patch just makes diff to follow diffutils behaviour. I don't know if diff.c code can be optimized.