From fdf465925e9b3cdd90c15a2f7fb475397f51b993 Mon Sep 17 00:00:00 2001 From: nicm Date: Mon, 30 Oct 2023 16:05:30 +0000 Subject: Do not allow combined UTF-8 characters that are too long, GitHub issue 3729. --- screen-write.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'screen-write.c') diff --git a/screen-write.c b/screen-write.c index 01632f61..ff758a17 100644 --- a/screen-write.c +++ b/screen-write.c @@ -2025,6 +2025,10 @@ screen_write_combine(struct screen_write_ctx *ctx, const struct grid_cell *gc) return (0); } + /* Check if this combined character would be too long. */ + if (last.data.size + ud->size > sizeof last.data.data) + return (0); + /* Combining; flush any pending output. */ screen_write_collect_flush(ctx, 0, __func__); -- cgit v1.2.3