From 0d1d6a361a6b5a5fa4a875e1c358baf346a996f9 Mon Sep 17 00:00:00 2001 From: Tim Culverhouse Date: Sun, 18 Feb 2024 06:56:49 -0600 Subject: csi: check for private marker in 'S' case The handler for 'S' final character does not check for a private marker. This can cause a conflict with a sequence called 'XTSMGRAPHICS' which also has an 'S' final character, but uses the private marker '?'. Without checking for a private marker, st will perform a scroll up operation when XTSMGRAPHICS is seen, which can cause unexpected display artifacts. --- st.c | 1 + 1 file changed, 1 insertion(+) diff --git a/st.c b/st.c index be2be2c..386e001 100644 --- a/st.c +++ b/st.c @@ -1790,6 +1790,7 @@ csihandle(void) } break; case 'S': /* SU -- Scroll line up */ + if (csiescseq.priv) break; DEFAULT(csiescseq.arg[0], 1); tscrollup(term.top, csiescseq.arg[0], 0); break; -- cgit v1.2.3