=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/window.c,v retrieving revision 1.45 retrieving revision 1.46 diff -c -r1.45 -r1.46 *** src/usr.bin/tmux/window.c 2010/03/22 19:07:52 1.45 --- src/usr.bin/tmux/window.c 2010/04/04 18:48:37 1.46 *************** *** 1,4 **** ! /* $OpenBSD: window.c,v 1.45 2010/03/22 19:07:52 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: window.c,v 1.46 2010/04/04 18:48:37 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott *************** *** 586,594 **** void window_pane_read_callback(unused struct bufferevent *bufev, void *data) { ! struct window_pane *wp = data; ! window_pane_parse(wp); } /* ARGSUSED */ --- 586,604 ---- void window_pane_read_callback(unused struct bufferevent *bufev, void *data) { ! struct window_pane *wp = data; ! char *new_data; ! size_t new_size; ! new_size = EVBUFFER_LENGTH(wp->event->input) - wp->pipe_off; ! if (wp->pipe_fd != -1 && new_size > 0) { ! new_data = EVBUFFER_DATA(wp->event->input); ! bufferevent_write(wp->pipe_event, new_data, new_size); ! } ! ! input_parse(wp); ! ! wp->pipe_off = EVBUFFER_LENGTH(wp->event->input); } /* ARGSUSED */ *************** *** 724,746 **** wp->screen = &wp->base; wp->flags |= PANE_REDRAW; - } - - void - window_pane_parse(struct window_pane *wp) - { - char *data; - size_t new_size; - - new_size = EVBUFFER_LENGTH(wp->event->input) - wp->pipe_off; - if (wp->pipe_fd != -1 && new_size > 0) { - data = EVBUFFER_DATA(wp->event->input); - bufferevent_write(wp->pipe_event, data, new_size); - } - - input_parse(wp); - - wp->pipe_off = EVBUFFER_LENGTH(wp->event->input); } void --- 734,739 ----