From nobody Tue Feb 17 13:17:07 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 4fFgCl6lf2z6SQ4B for ; Tue, 17 Feb 2026 13:17:07 +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 "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fFgCl3zsmz3l4c for ; Tue, 17 Feb 2026 13:17:07 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1771334227; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PVebD7A9dvyLnzepdX9PiN5dNsjhh5vhq9OuZrHrDVk=; b=Dl1uGzY3ur0iNortrzBFVSiH5u/hi/lmKy1hVTTet0hi0y5APz3FFmD4ie0mTQ51//JdKS uWu+phlbDtARo8yEcpaTx6skhFFr2Crd9K27vouyzdc21r9He4B0OXkmrPn6Toj+Y5vBq8 5/8WrtVbgowh8GDwvoz7CnjVi94qQd4g0vkTrC0TH9qpbOxlaOpqpBabmM8YjTG/LJvmib zfBVjqr6FJNeiDILBSRXtJMLisZGCr5ggBOyI9AmdAHe1R+FMzZ9sGS9oQ2GkGl9h07GIP omET4Gfj9PL6lmo7xqALiCVG1LRfkVJ4dp9vBBeGCxrtC6D2368UriLyF21QcQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1771334227; a=rsa-sha256; cv=none; b=ZB68O3/df19U0p5tHy+/B4fKylEx4l17OeUA6qmW2YAxJpQmBbv9WNtpeJfVC9+BXK03oY BhnHWXJqd99D+ocM2hPNTvQMxMTVx8h2TYxiSsuj146JomBIxhQRlv1hz81LWXZu0y4Isk VUbk8ZYsEXQt7RrMk9hPPQnrdcB0Cfr/n2qjHEjpXlZvJFz21ncrSYfvEPMB29Af5yQme7 MPXfKALHIoNsrDgcWFl9tC+NhZBsMukpzEhnVd7rFVAE1WwXG0CF6tch+GunhOtNuYH1j2 HjagBB6ECJ+58GGP6g0XkuawyBG6XCXJmDfaKsynscO7V9o60FsNNfweQ0yGLA== 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=1771334227; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=PVebD7A9dvyLnzepdX9PiN5dNsjhh5vhq9OuZrHrDVk=; b=vgEJgbXZ9vb7t5+YAAkOVPMuAFCcyobk7ApfLvlsw9KkEs23H+gKxTrUuvAFgFaHAcY2Sr qwJPyI1FrZbE/rTHUcHS3d/+A6bYj6+e7ikviSide+TKpqqpqwnKYrCE6MlJ01tOEgLy07 GwdOaGd6oo556nfBed1X02BI4t1iTg77VnViLzBHprdad8QVlMP7wRQ7EIHBSYb0TsRvA2 qOJa/dlcBiaR7IJB8G9gPQoM22nwCoCO49G1H85RJIG6FDGH6ZnJJqpubfWQ5odWjZCSoz U3KY5/kvOBZxAaukc6HoJ8gOPv4fmdMTNaplto+oJXr+n9OS1zTIvRfaH8sJNA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fFgCl3SkFz19gS for ; Tue, 17 Feb 2026 13:17:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 3f5f0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Tue, 17 Feb 2026 13:17:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Aymeric Wibo Subject: git: 69a3d9ab8019 - stable/15 - touch: Fix setting time of created file if fstat() fails 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: obiwac X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 69a3d9ab8019752608f2597e9f0c7a4b8c21a062 Auto-Submitted: auto-generated Date: Tue, 17 Feb 2026 13:17:07 +0000 Message-Id: <69946a53.3f5f0.127b282b@gitrepo.freebsd.org> The branch stable/15 has been updated by obiwac: URL: https://cgit.FreeBSD.org/src/commit/?id=69a3d9ab8019752608f2597e9f0c7a4b8c21a062 commit 69a3d9ab8019752608f2597e9f0c7a4b8c21a062 Author: Aymeric Wibo AuthorDate: 2026-02-04 20:58:13 +0000 Commit: Aymeric Wibo CommitDate: 2026-02-17 13:14:14 +0000 touch: Fix setting time of created file if fstat() fails Previously, if creating the file and fstat() fails, we would've ended up calling utimensat() on that file anyways with whatever was in sb. Not that this is an error likely to happen... We don't check for the return value of close() as we aren't writing anything to the file and the file is always created on success of open(). Reviewed by: kevans Approved by: kevans Fixes: cb54c500d0e1 ("touch: don't leak descriptor if fstat(2) fails") Sponsored by: Klara, Inc. Differential Revision: https://reviews.freebsd.org/D55117 MFC after: 1 week (cherry picked from commit b8d55a86995b5a8db5d1651c8dc9fc5093b67d2c) --- usr.bin/touch/touch.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/usr.bin/touch/touch.c b/usr.bin/touch/touch.c index 70257e320a60..2be2e369596c 100644 --- a/usr.bin/touch/touch.c +++ b/usr.bin/touch/touch.c @@ -163,19 +163,14 @@ main(int argc, char *argv[]) /* Create the file. */ fd = open(*argv, O_WRONLY | O_CREAT, DEFFILEMODE); - if (fd == -1) { + if (fd < 0 || fstat(fd, &sb) < 0) { rval = 1; warn("%s", *argv); + if (fd >= 0) + (void)close(fd); continue; } - if (fstat(fd, &sb) < 0) { - warn("%s", *argv); - rval = 1; - } - if (close(fd) < 0) { - warn("%s", *argv); - rval = 1; - } + (void)close(fd); /* If using the current time, we're done. */ if (!timeset)