From 44f8884c2e2eac2b5596ad4bdb4a616ff8467ff3 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. --- usr.bin/tmux/input.c | 42 +++++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/usr.bin/tmux/input.c b/usr.bin/tmux/input.c index 44c9bff749c..51d142cdd0e 100644 --- a/usr.bin/tmux/input.c +++ b/usr.bin/tmux/input.c @@ -1,4 +1,4 @@ -/* $OpenBSD: input.c,v 1.191 2021/08/13 06:52:51 nicm Exp $ */ +/* $OpenBSD: input.c,v 1.192 2021/08/14 16:26:29 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -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. */ -- 2.20.1