From befcea8b6289866e022d1026f06b07997021dd0a Mon Sep 17 00:00:00 2001 From: Jocelyn Falempe Date: Mon, 1 Jun 2026 14:47:22 +0200 Subject: [PATCH] fix CSI default parameter if a parameter is omitted, it should be set to 0. So the following sequences should be equivalent: \x1b[0;90m \x1b[;90m And with this fix, they are now equivalent.u --- src/tsm/tsm-vte.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/tsm/tsm-vte.c b/src/tsm/tsm-vte.c index 6ae907e..6ed998a 100644 --- a/src/tsm/tsm-vte.c +++ b/src/tsm/tsm-vte.c @@ -1056,8 +1056,12 @@ static void do_param(struct tsm_vte *vte, uint32_t data) int new; if (data == ';') { - if (vte->csi_argc < CSI_ARG_MAX) + if (vte->csi_argc < CSI_ARG_MAX) { + // default parameter value is 0 if omitted + if (vte->csi_argv[vte->csi_argc] == -1) + vte->csi_argv[vte->csi_argc] = 0; vte->csi_argc++; + } return; }