From 3f1a5ed034b65e8d9542e506bb7e85ed1fd4303c Mon Sep 17 00:00:00 2001 From: Bakkeby Date: Tue, 1 Oct 2024 23:17:07 +0200 Subject: [PATCH] Revert "undercurl: support semicolons in SGR character attributes ref. #148" This reverts commit 398aeb1cd6c8d1d4c8c5461bc7cc421c2c442302. --- st.c | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/st.c b/st.c index 0271109..7b25227 100644 --- a/st.c +++ b/st.c @@ -170,7 +170,7 @@ static void csihandle(void); static void dcshandle(void); #endif // SIXEL_PATCH #if UNDERCURL_PATCH -static void readcolonargs(char **, int, int[][CAR_PER_ARG], int sep); +static void readcolonargs(char **, int, int[][CAR_PER_ARG]); #endif // UNDERCURL_PATCH static void csiparse(void); static void csireset(void); @@ -1483,21 +1483,20 @@ tnewline(int first_col) #if UNDERCURL_PATCH void -readcolonargs(char **p, int cursor, int params[][CAR_PER_ARG], int sep) +readcolonargs(char **p, int cursor, int params[][CAR_PER_ARG]) { int i = 0; - for (; i < CAR_PER_ARG; i++) params[cursor][i] = -1; - if (**p != sep) + if (**p != ':') return; char *np = NULL; i = 0; - while (**p == sep && i < CAR_PER_ARG) { - while (**p == sep) + while (**p == ':' && i < CAR_PER_ARG) { + while (**p == ':') (*p)++; params[cursor][i] = strtol(*p, &np, 10); *p = np; @@ -1529,13 +1528,11 @@ csiparse(void) v = -1; csiescseq.arg[csiescseq.narg++] = v; p = np; + #if UNDERCURL_PATCH + readcolonargs(&p, csiescseq.narg-1, csiescseq.carg); + #endif // UNDERCURL_PATCH if (sep == ';' && *p == ':') sep = ':'; /* allow override to colon once */ - #if UNDERCURL_PATCH - if (v == 4 || v == 58) - readcolonargs(&p, csiescseq.narg-1, csiescseq.carg, sep); - #endif // UNDERCURL_PATCH - if (*p != sep || csiescseq.narg == ESC_ARG_SIZ) break; p++;