Date: Mon, 19 Aug 2024 07:59:53 GMT From: Konstantin Belousov <kib@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 308399a179a4 - main - tail -F: fix crash Message-ID: <202408190759.47J7xrmg016355@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=308399a179a49b7b858c725de10177fdb0502fd2 commit 308399a179a49b7b858c725de10177fdb0502fd2 Author: Andre Albsmeier <mail@fbsd2.e4m.org> AuthorDate: 2024-08-19 07:54:24 +0000 Commit: Konstantin Belousov <kib@FreeBSD.org> CommitDate: 2024-08-19 07:54:24 +0000 tail -F: fix crash When show() detects an error and closes the file and follow() wants to close it again, a NULL dereference occurs. PR: 280910 MFC after: 1 week --- usr.bin/tail/forward.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/usr.bin/tail/forward.c b/usr.bin/tail/forward.c index a5303385a74f..6d9db94a827f 100644 --- a/usr.bin/tail/forward.c +++ b/usr.bin/tail/forward.c @@ -379,7 +379,8 @@ follow(file_info_t *files, enum STYLE style, off_t off) sb2.st_dev != file->st.st_dev || sb2.st_nlink == 0) { show(file); - fclose(file->fp); + if (file->fp != NULL) + fclose(file->fp); file->fp = ftmp; memcpy(&file->st, &sb2, sizeof(struct stat));
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202408190759.47J7xrmg016355>