git: 0811d18fea91 - stable/13 - cal: don't print terminal control characters unless stdout is a TTY

From: Alan Somers <asomers_at_FreeBSD.org>
Date: Fri, 27 Jan 2023 19:31:30 UTC
The branch stable/13 has been updated by asomers:

URL: https://cgit.FreeBSD.org/src/commit/?id=0811d18fea9177b8c378d9d28ea34d6d3c81a5f6

commit 0811d18fea9177b8c378d9d28ea34d6d3c81a5f6
Author:     Alan Somers <asomers@FreeBSD.org>
AuthorDate: 2023-01-13 20:19:03 +0000
Commit:     Alan Somers <asomers@FreeBSD.org>
CommitDate: 2023-01-27 19:30:53 +0000

    cal: don't print terminal control characters unless stdout is a TTY
    
    A similar change was made in svn r223931, but it was incomplete, working
    only when the utility was invoked as "ncal".  Fix the same issue when
    invoking as "cal".
    
    PR:             268936
    Reported by:    Ray Bellis <ray@bellis.me.uk>
    Sponsored by:   Axcient
    Reviewed by:    imp
    Differential Revision: https://reviews.freebsd.org/D38045
    
    (cherry picked from commit 92e978439f0c3139775ad96d412959f5a74b17b6)
---
 usr.bin/ncal/ncal.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/usr.bin/ncal/ncal.c b/usr.bin/ncal/ncal.c
index 3f0df22e37fc..641c59f71e10 100644
--- a/usr.bin/ncal/ncal.c
+++ b/usr.bin/ncal/ncal.c
@@ -930,7 +930,8 @@ mkmonthb(int y, int m, int jd_flag, struct monthlines *mlines)
 					dt.d = j - jan1 + 1;
 				else
 					sdateb(j, &dt);
-				if (j == highlightdate && !flag_nohighlight)
+				if (j == highlightdate && !flag_nohighlight
+				 && isatty(STDOUT_FILENO))
 					highlight(mlines->lines[i] + k,
 					    ds + dt.d * dw, dw, &l);
 				else