mirror of
https://github.com/tmux/tmux.git
synced 2024-12-14 10:58:48 +00:00
Merge branch 'obsd-master'
This commit is contained in:
commit
ce20572ace
11
input.c
11
input.c
@ -1199,6 +1199,7 @@ input_csi_dispatch(struct input_ctx *ictx)
|
|||||||
struct screen *s = sctx->s;
|
struct screen *s = sctx->s;
|
||||||
struct input_table_entry *entry;
|
struct input_table_entry *entry;
|
||||||
int n, m;
|
int n, m;
|
||||||
|
u_int cx;
|
||||||
|
|
||||||
if (ictx->flags & INPUT_DISCARD)
|
if (ictx->flags & INPUT_DISCARD)
|
||||||
return (0);
|
return (0);
|
||||||
@ -1217,12 +1218,16 @@ input_csi_dispatch(struct input_ctx *ictx)
|
|||||||
switch (entry->type) {
|
switch (entry->type) {
|
||||||
case INPUT_CSI_CBT:
|
case INPUT_CSI_CBT:
|
||||||
/* Find the previous tab point, n times. */
|
/* Find the previous tab point, n times. */
|
||||||
|
cx = s->cx;
|
||||||
|
if (cx > screen_size_x(s) - 1)
|
||||||
|
cx = screen_size_x(s) - 1;
|
||||||
n = input_get(ictx, 0, 1, 1);
|
n = input_get(ictx, 0, 1, 1);
|
||||||
while (s->cx > 0 && n-- > 0) {
|
while (cx > 0 && n-- > 0) {
|
||||||
do
|
do
|
||||||
s->cx--;
|
cx--;
|
||||||
while (s->cx > 0 && !bit_test(s->tabs, s->cx));
|
while (cx > 0 && !bit_test(s->tabs, cx));
|
||||||
}
|
}
|
||||||
|
s->cx = cx;
|
||||||
break;
|
break;
|
||||||
case INPUT_CSI_CUB:
|
case INPUT_CSI_CUB:
|
||||||
screen_write_cursorleft(sctx, input_get(ictx, 0, 1, 1));
|
screen_write_cursorleft(sctx, input_get(ictx, 0, 1, 1));
|
||||||
|
Loading…
Reference in New Issue
Block a user