Fix null pointer access in strhandle - st - simple terminal
HTML git clone https://git.parazyd.org/st
DIR Log
DIR Files
DIR Refs
DIR README
DIR LICENSE
---
DIR commit a0467c802d4f86ed162486e3453dd61181423902
DIR parent 273db5ceaf392e68c2faf8f7dec14ea2e25e980d
HTML Author: Jochen Sprickerhof <git@jochen.sprickerhof.de>
Date: Mon, 27 Dec 2021 11:41:42 +0100
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.
Diffstat:
M st.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
---
DIR diff --git 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)