gentoo/app-misc/tmux/files/tmux-3.5-fix-xterm-sym.patch
Arthur Zamarin 41ffaf5559
app-misc/tmux: add fix for TERM=xterm
Triaged-by: Sam James <sam@gentoo.org>
Closes: https://bugs.gentoo.org/941713
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
2024-10-18 22:29:01 +03:00

39 lines
1.2 KiB
Diff

https://github.com/tmux/tmux/commit/934035db7197d4510b330df8d8963f78e9c8756d
From: nicm <nicm>
Date: Mon, 14 Oct 2024 20:26:45 +0000
Subject: [PATCH] Set ACS flag for REP. Reported by Romain Francoise, GitHub
issue 4182.
--- a/input.c
+++ b/input.c
@@ -1145,7 +1145,6 @@ input_print(struct input_ctx *ictx)
ictx->cell.cell.attr |= GRID_ATTR_CHARSET;
else
ictx->cell.cell.attr &= ~GRID_ATTR_CHARSET;
-
utf8_set(&ictx->cell.cell.data, ictx->ch);
screen_write_collect_add(sctx, &ictx->cell.cell);
@@ -1349,7 +1348,7 @@ input_csi_dispatch(struct input_ctx *ictx)
struct screen_write_ctx *sctx = &ictx->ctx;
struct screen *s = sctx->s;
struct input_table_entry *entry;
- int i, n, m, ek;
+ int i, n, m, ek, set;
u_int cx, bg = ictx->cell.cell.bg;
if (ictx->flags & INPUT_DISCARD)
@@ -1592,6 +1591,11 @@ input_csi_dispatch(struct input_ctx *ictx)
if (~ictx->flags & INPUT_LAST)
break;
+ set = ictx->cell.set == 0 ? ictx->cell.g0set : ictx->cell.g1set;
+ if (set == 1)
+ ictx->cell.cell.attr |= GRID_ATTR_CHARSET;
+ else
+ ictx->cell.cell.attr &= ~GRID_ATTR_CHARSET;
utf8_copy(&ictx->cell.cell.data, &ictx->last);
for (i = 0; i < n; i++)
screen_write_collect_add(sctx, &ictx->cell.cell);