mirror of
https://github.com/tmux/tmux.git
synced 2024-11-16 17:39:09 +00:00
Sync OpenBSD patchset 275:
Instead of just checking for an empty buffer, which may not be the case if there is unconsumed data, save the previous size and use it instead. This means that activity monitoring should work in this (unlikely) event. Also remove a debugging statement that no longer seems necessary.
This commit is contained in:
parent
d895d4a9f0
commit
4631c07483
12
input.c
12
input.c
@ -1,4 +1,4 @@
|
||||
/* $Id: input.c,v 1.92 2009-08-19 09:04:48 nicm Exp $ */
|
||||
/* $Id: input.c,v 1.93 2009-08-20 11:48:01 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -235,6 +235,8 @@ input_init(struct window_pane *wp)
|
||||
ictx->saved_cy = 0;
|
||||
|
||||
input_state(ictx, input_state_first);
|
||||
|
||||
ictx->was = 0;
|
||||
}
|
||||
|
||||
void
|
||||
@ -252,8 +254,9 @@ input_parse(struct window_pane *wp)
|
||||
struct input_ctx *ictx = &wp->ictx;
|
||||
u_char ch;
|
||||
|
||||
if (BUFFER_USED(wp->in) == 0)
|
||||
if (BUFFER_USED(wp->in) == ictx->was)
|
||||
return;
|
||||
wp->window->flags |= WINDOW_ACTIVITY;
|
||||
|
||||
ictx->buf = BUFFER_OUT(wp->in);
|
||||
ictx->len = BUFFER_USED(wp->in);
|
||||
@ -261,15 +264,11 @@ input_parse(struct window_pane *wp)
|
||||
|
||||
ictx->wp = wp;
|
||||
|
||||
log_debug2("entry; buffer=%zu", ictx->len);
|
||||
|
||||
if (wp->mode == NULL)
|
||||
screen_write_start(&ictx->ctx, wp, &wp->base);
|
||||
else
|
||||
screen_write_start(&ictx->ctx, NULL, &wp->base);
|
||||
|
||||
if (ictx->off != ictx->len)
|
||||
wp->window->flags |= WINDOW_ACTIVITY;
|
||||
while (ictx->off < ictx->len) {
|
||||
ch = ictx->buf[ictx->off++];
|
||||
ictx->state(ch, ictx);
|
||||
@ -278,6 +277,7 @@ input_parse(struct window_pane *wp)
|
||||
screen_write_stop(&ictx->ctx);
|
||||
|
||||
buffer_remove(wp->in, ictx->len);
|
||||
ictx->was = BUFFER_USED(wp->in);
|
||||
}
|
||||
|
||||
void
|
||||
|
3
tmux.h
3
tmux.h
@ -1,4 +1,4 @@
|
||||
/* $Id: tmux.h,v 1.423 2009-08-20 11:35:16 tcunha Exp $ */
|
||||
/* $Id: tmux.h,v 1.424 2009-08-20 11:48:01 tcunha Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -615,6 +615,7 @@ struct input_ctx {
|
||||
u_char *buf;
|
||||
size_t len;
|
||||
size_t off;
|
||||
size_t was;
|
||||
|
||||
struct grid_cell cell;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user