From 9686b015a0d71d08828afb0cfe6e477bbc4909ae Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Sun, 16 Apr 2023 09:19:15 +0300 Subject: [PATCH] Fix strike-through attribute support on TTY frames * src/term.c (init_tty): Fix setting the strike-through capability with "smxx". (Bug#62265) --- src/term.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/term.c b/src/term.c index d881dee39fe..8a16ce4e33f 100644 --- a/src/term.c +++ b/src/term.c @@ -4163,7 +4163,15 @@ use the Bourne shell command 'TERM=...; export TERM' (C-shell:\n\ tty->TS_enter_alt_charset_mode = tgetstr ("as", address); tty->TS_exit_alt_charset_mode = tgetstr ("ae", address); tty->TS_exit_attribute_mode = tgetstr ("me", address); +#ifdef TERMINFO + tty->TS_enter_strike_through_mode = tigetstr ("smxx", address); + if (tty->TS_enter_strike_through_mode == (char *) (intptr_t) -1) + tty->TS_enter_strike_through_mode = NULL; +#else + /* FIXME: Is calling tgetstr here for non-terminfo case correct, + even though "smxx" is more than 2 characters? */ tty->TS_enter_strike_through_mode = tgetstr ("smxx", address); +#endif MultiUp (tty) = tgetstr ("UP", address); MultiDown (tty) = tgetstr ("DO", address); -- 2.39.5