From: Eli Zaretskii Date: Thu, 11 Nov 2021 14:55:11 +0000 (+0200) Subject: Fix 8-color PuTTY -nw sessions broken by a recent commit X-Git-Tag: emacs-29.0.90~3668^2~45 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=386289bdc8461898b05f318b77e0bedf2509537d;p=emacs.git Fix 8-color PuTTY -nw sessions broken by a recent commit * src/term.c (init_tty): Fix the change which introduced support for the terminfo Tc flag. The code as installed broke colors in PuTTY -nw sessions, because 'tigetflag' returned -1, which is non-zero, so it was treated as the sign that true color is supported. But if the value returned by 'tigetflag' is -1, it means the capability is not a boolean one, so that's not to be used as a valid support for 24-bit color. (Bug#44950) --- diff --git a/src/term.c b/src/term.c index d86ae12ba84..51fcef6f1ec 100644 --- a/src/term.c +++ b/src/term.c @@ -4155,7 +4155,7 @@ use the Bourne shell command 'TERM=...; export TERM' (C-shell:\n\ /* Fall back to xterm+direct (semicolon version) if Tc is set (de-facto standard introduced by tmux) or if requested by the COLORTERM environment variable. */ - else if (tigetflag("Tc") + else if ((tigetflag("Tc") != -1) || ((bg = getenv("COLORTERM")) != NULL && strcasecmp(bg, "truecolor") == 0)) {