From 30786abe0ebc99ebc4556eb70bc46cb670892cbd Mon Sep 17 00:00:00 2001 From: nicm Date: Sat, 14 Aug 2021 16:26:29 +0000 Subject: [PATCH] Some other missing palette NULL checks, from oss-fuzz. --- input.c | 40 ++++++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 16 deletions(-) diff --git a/input.c b/input.c index 155144b7..7a320c56 100644 --- a/input.c +++ b/input.c @@ -2556,10 +2556,12 @@ input_osc_10(struct input_ctx *ictx, const char *p) log_debug("bad OSC 10: %s", p); return; } - ictx->palette->fg = c; - if (wp != NULL) - wp->flags |= PANE_STYLECHANGED; - screen_write_fullredraw(&ictx->ctx); + if (ictx->palette != NULL) { + ictx->palette->fg = c; + if (wp != NULL) + wp->flags |= PANE_STYLECHANGED; + screen_write_fullredraw(&ictx->ctx); + } } /* Handle the OSC 110 sequence for resetting background colour. */ @@ -2570,10 +2572,12 @@ input_osc_110(struct input_ctx *ictx, const char *p) if (*p != '\0') return; - ictx->palette->fg = 8; - if (wp != NULL) - wp->flags |= PANE_STYLECHANGED; - screen_write_fullredraw(&ictx->ctx); + if (ictx->palette != NULL) { + ictx->palette->fg = 8; + if (wp != NULL) + wp->flags |= PANE_STYLECHANGED; + screen_write_fullredraw(&ictx->ctx); + } } /* Handle the OSC 11 sequence for setting and querying background colour. */ @@ -2596,10 +2600,12 @@ input_osc_11(struct input_ctx *ictx, const char *p) log_debug("bad OSC 11: %s", p); return; } - ictx->palette->bg = c; - if (wp != NULL) - wp->flags |= PANE_STYLECHANGED; - screen_write_fullredraw(&ictx->ctx); + if (ictx->palette != NULL) { + ictx->palette->bg = c; + if (wp != NULL) + wp->flags |= PANE_STYLECHANGED; + screen_write_fullredraw(&ictx->ctx); + } } /* Handle the OSC 111 sequence for resetting background colour. */ @@ -2610,10 +2616,12 @@ input_osc_111(struct input_ctx *ictx, const char *p) if (*p != '\0') return; - ictx->palette->bg = 8; - if (wp != NULL) - wp->flags |= PANE_STYLECHANGED; - screen_write_fullredraw(&ictx->ctx); + if (ictx->palette != NULL) { + ictx->palette->bg = 8; + if (wp != NULL) + wp->flags |= PANE_STYLECHANGED; + screen_write_fullredraw(&ictx->ctx); + } } /* Handle the OSC 52 sequence for setting the clipboard. */