=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/Attic/tty-write.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- src/usr.bin/tmux/Attic/tty-write.c 2009/07/22 16:45:31 1.5 +++ src/usr.bin/tmux/Attic/tty-write.c 2009/07/22 18:02:23 1.6 @@ -1,4 +1,4 @@ -/* $OpenBSD: tty-write.c,v 1.5 2009/07/22 16:45:31 nicm Exp $ */ +/* $OpenBSD: tty-write.c,v 1.6 2009/07/22 18:02:23 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott @@ -23,39 +23,39 @@ #include "tmux.h" void -tty_write0(struct window_pane *wp, enum tty_cmd cmd) +tty_write0(struct window_pane *wp, tty_cmd_func *cmdfn) { struct tty_ctx ctx; memset(&ctx, 0, sizeof ctx); ctx.wp = wp; - tty_write_cmd(cmd, &ctx); + tty_write(cmdfn, &ctx); } void -tty_writenum(struct window_pane *wp, enum tty_cmd cmd, u_int num) +tty_writenum(struct window_pane *wp, tty_cmd_func *cmdfn, u_int num) { struct tty_ctx ctx; memset(&ctx, 0, sizeof ctx); ctx.wp = wp; ctx.num = num; - tty_write_cmd(cmd, &ctx); + tty_write(cmdfn, &ctx); } void -tty_writeptr(struct window_pane *wp, enum tty_cmd cmd, void *ptr) +tty_writeptr(struct window_pane *wp, tty_cmd_func *cmdfn, void *ptr) { struct tty_ctx ctx; memset(&ctx, 0, sizeof ctx); ctx.wp = wp; ctx.ptr = ptr; - tty_write_cmd(cmd, &ctx); + tty_write(cmdfn, &ctx); } void -tty_write_cmd(enum tty_cmd cmd, struct tty_ctx *ctx) +tty_write(tty_cmd_func *cmdfn, struct tty_ctx *ctx) { struct window_pane *wp = ctx->wp; struct client *c; @@ -77,9 +77,10 @@ continue; if (c->session->curw->window == wp->window) { + if (c->tty.flags & TTY_FREEZE || c->tty.term == NULL) + continue; tty_update_mode(&c->tty, c->tty.mode & ~MODE_CURSOR); - - tty_write(&c->tty, cmd, ctx); + cmdfn(&c->tty, ctx); } } }