git: 824bbb9a4082 - main - diff: consider two files with same inodes as identical
Date: Thu, 07 Oct 2021 15:09:46 UTC
The branch main has been updated by oshogbo: URL: https://cgit.FreeBSD.org/src/commit/?id=824bbb9a40820fb62bde0a91c0f13e0b894da149 commit 824bbb9a40820fb62bde0a91c0f13e0b894da149 Author: Mariusz Zaborski <oshogbo@FreeBSD.org> AuthorDate: 2021-10-07 15:07:00 +0000 Commit: Mariusz Zaborski <oshogbo@FreeBSD.org> CommitDate: 2021-10-07 15:07:00 +0000 diff: consider two files with same inodes as identical Obtained from: OpenBSD MFC after: 1 week --- usr.bin/diff/diffreg.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/usr.bin/diff/diffreg.c b/usr.bin/diff/diffreg.c index fc3c3406a073..995843f9e539 100644 --- a/usr.bin/diff/diffreg.c +++ b/usr.bin/diff/diffreg.c @@ -440,6 +440,10 @@ files_differ(FILE *f1, FILE *f2, int flags) if ((flags & (D_EMPTY1|D_EMPTY2)) || stb1.st_size != stb2.st_size || (stb1.st_mode & S_IFMT) != (stb2.st_mode & S_IFMT)) return (1); + + if (stb1.st_dev == stb2.st_dev && stb1.st_ino == stb2.st_ino) + return (0); + for (;;) { i = fread(buf1, 1, sizeof(buf1), f1); j = fread(buf2, 1, sizeof(buf2), f2);