aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJochen Sprickerhof <git@jochen.sprickerhof.de>2021-12-27 11:41:42 +0100
committerRomain Gonçalves <me@rgoncalves.se>2024-05-12 21:20:50 +0200
commitafaca11e795f36dd4fb4743292318e3df39ccabf (patch)
treec3426df56561eff83808c4595f0f219c30a74f10
parentd10533424e3849b02fec36dc85fee3d7de987edf (diff)
downloadst-afaca11e795f36dd4fb4743292318e3df39ccabf.tar.gz
Fix null pointer access in strhandle
According to the spec the argument is optional for 104, so p can be NULL as can be tested with printf '\x1b]104\x07'. This is a regression of 8e31030.
-rw-r--r--st.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/st.c b/st.c
index 6783c2b..de2dd0e 100644
--- a/st.c
+++ b/st.c
@@ -1960,10 +1960,10 @@ strhandle(void)
break;
p = strescseq.args[2];
/* FALLTHROUGH */
- case 104: /* color reset, here p = NULL */
+ case 104: /* color reset */
j = (narg > 1) ? atoi(strescseq.args[1]) : -1;
- if (!strcmp(p, "?"))
+ if (p && !strcmp(p, "?"))
osc4_color_response(j);
else if (xsetcolorname(j, p)) {
if (par == 104 && narg <= 1)
remember that computers suck.