From nobody Wed Feb 11 06:15:39 2026 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4f9p8C6j9Vz6S0sJ for ; Wed, 11 Feb 2026 06:15:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4f9p8C5Gtlz3kQh for ; Wed, 11 Feb 2026 06:15:39 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770790539; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4JtS2OU/zAJBHld4ugZPowgsg/WH/y5KDvrwKl7Z+k0=; b=lRvpfVVa/5BOMkVwEzUFO69s8SvojHFWVzdYE11vhbJjuIR+wLNuPAubUGgxcGnOJsmh6r /2AIC9IbTWHd6MTC5xNW5gMiiP41sojsdcbhg3paoHPF3WIJWXB3pTLAxPzMHSinu6micu d1JsTqVgrWN0XSlWg7EHDYoYtjNkPVaKkoKj5yDCMXBz2rpul+0KyVZAi74bERPBATmN2E NlmJfaUZAsf5s+g33gRCM8LqZUL3XPFV4mQ6091jf/f+8qGI21gRmwoDeI7XnM4/sl6l7e xEJ4rXnQOJNaRnDVPjF+2ypLIqfbDB1WvcQiZ9a1QmcTWN5AiZT23oZIqj5Owg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1770790539; a=rsa-sha256; cv=none; b=Rw4OTgZOIduGxQa7bZkye9dxDgEiIkq2o4zuMcRtphWVPVHgdIA8RTwU/fUi/za4wHp2uo 5kHng3APsVykx8BKwL6HMJ6svN497Cli13hUgjU3WEx5jIpUk51OvFD+xy9iJAHAiy4gCr 4ecrH4XVApm7Xg3SSnWjwNm75gpSiRkuQ7QDGbbDXSHdhqLB87zRpX5fB1Ghzj40yaOF2d JbKSYFnb/ste9cSJK/gDGXsa2NjvFJ2+mpXifkjeSpxY0ym9EJOiJBiNZebGUYrDH2Nkqj t1n5i9TrLdResrIL/Zi0mKpLiRhh5Bs2vXv/sqgmMds0KyEJi0+YZx7IIpN8iQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1770790539; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=4JtS2OU/zAJBHld4ugZPowgsg/WH/y5KDvrwKl7Z+k0=; b=PzPhe9/Is1GTYJR3GE8hjBiX78L1oX00uYyC7LHxM/+7qaoW3dNC+tDrDjMgynhp80nCAk 7CAyAGntxPHWrrJegM6rYU0q5BaJo4yzc5T4I3kqLpHqTBbfdwTROo8pTAWk7/iXpwGcB4 3vOILcN97KRgnOJg3/qyOc/hbTSCxGz6m5jOQ7fQtWxGPP3N7GeULpN4wK5etcT1qfZCm7 zVsg0/IDDBcp+dUhu/ey366Vzoey//f91zgOpPIlcDg0+V3RBH89Eagsq4Y6w33x8uWqXw PcMxjMvm+PswFr0y/85uJBae2o2qt0ohmwMtOeGfh2ogOUVtIZA9pUuoLiPQog== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4f9p8C4hn6zdhm for ; Wed, 11 Feb 2026 06:15:39 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 33b68 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 11 Feb 2026 06:15:39 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Cc: Dag-Erling=?utf-8?Q? Sm=C3=B8rg?=rav From: Colin Percival Subject: git: 3c10ed2ba3aa - releng/14.4 - diff: Report I/O errors in Stone algorithm List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: cperciva X-Git-Repository: src X-Git-Refname: refs/heads/releng/14.4 X-Git-Reftype: branch X-Git-Commit: 3c10ed2ba3aaef386e57e6078d6d8421429a55d7 Auto-Submitted: auto-generated Date: Wed, 11 Feb 2026 06:15:39 +0000 Message-Id: <698c1e8b.33b68.58cd342e@gitrepo.freebsd.org> The branch releng/14.4 has been updated by cperciva: URL: https://cgit.FreeBSD.org/src/commit/?id=3c10ed2ba3aaef386e57e6078d6d8421429a55d7 commit 3c10ed2ba3aaef386e57e6078d6d8421429a55d7 Author: Dag-Erling Smørgrav AuthorDate: 2026-02-05 17:41:56 +0000 Commit: Colin Percival CommitDate: 2026-02-11 06:14:50 +0000 diff: Report I/O errors in Stone algorithm In the legacy Stone algorithm, we do a first pass over the files to check if they're identical before we start diffing them. That code would correctly set the exit status if an I/O error was encountered, but would not emit an error message. Do so. Approved by: re (cperciva) PR: 292198 MFC after: 1 week Sponsored by: Klara, Inc. Reviewed by: thj Differential Revision: https://reviews.freebsd.org/D55125 (cherry picked from commit f8c12e6e3874cdd353fb16785da6f4e7eb134cd9) (cherry picked from commit 37ceb8794c22d88a41e261d23d347bc7ac08b2c8) --- usr.bin/diff/diffreg.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/usr.bin/diff/diffreg.c b/usr.bin/diff/diffreg.c index 954e0542b576..6ade8bfb8237 100644 --- a/usr.bin/diff/diffreg.c +++ b/usr.bin/diff/diffreg.c @@ -381,6 +381,10 @@ diffreg(char *file1, char *file2, int flags, int capsicum) break; default: /* error */ + if (ferror(f1)) + warn("%s", file1); + if (ferror(f2)) + warn("%s", file2); rval = D_ERROR; status |= 2; goto closem; @@ -474,9 +478,9 @@ files_differ(FILE *f1, FILE *f2, int flags) return (0); for (;;) { - i = fread(buf1, 1, sizeof(buf1), f1); - j = fread(buf2, 1, sizeof(buf2), f2); - if ((!i && ferror(f1)) || (!j && ferror(f2))) + if ((i = fread(buf1, 1, sizeof(buf1), f1)) == 0 && ferror(f1)) + return (-1); + if ((j = fread(buf2, 1, sizeof(buf2), f2)) == 0 && ferror(f2)) return (-1); if (i != j) return (1);