=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/Attic/server-window.c,v retrieving revision 1.23 retrieving revision 1.24 diff -c -r1.23 -r1.24 *** src/usr.bin/tmux/Attic/server-window.c 2012/01/21 06:13:16 1.23 --- src/usr.bin/tmux/Attic/server-window.c 2012/06/18 10:58:44 1.24 *************** *** 1,4 **** ! /* $OpenBSD: server-window.c,v 1.23 2012/01/21 06:13:16 nicm Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: server-window.c,v 1.24 2012/06/18 10:58:44 nicm Exp $ */ /* * Copyright (c) 2009 Nicholas Marriott *************** *** 76,121 **** return (0); if (s->curw != wl || s->flags & SESSION_UNATTACHED) wl->flags |= WINLINK_BELL; action = options_get_number(&s->options, "bell-action"); ! switch (action) { ! case BELL_ANY: ! if (s->flags & SESSION_UNATTACHED) ! break; ! visual = options_get_number(&s->options, "visual-bell"); ! for (i = 0; i < ARRAY_LENGTH(&clients); i++) { ! c = ARRAY_ITEM(&clients, i); ! if (c == NULL || c->session != s) ! continue; ! if (!visual) { ! tty_bell(&c->tty); ! continue; ! } ! if (c->session->curw->window == w) { ! status_message_set(c, "Bell in current window"); ! continue; ! } ! status_message_set(c, "Bell in window %u", ! winlink_find_by_window(&s->windows, w)->idx); } ! break; ! case BELL_CURRENT: ! if (s->flags & SESSION_UNATTACHED) ! break; ! visual = options_get_number(&s->options, "visual-bell"); ! for (i = 0; i < ARRAY_LENGTH(&clients); i++) { ! c = ARRAY_ITEM(&clients, i); ! if (c == NULL || c->session != s) ! continue; ! if (c->session->curw->window != w) ! continue; ! if (!visual) { ! tty_bell(&c->tty); ! continue; ! } status_message_set(c, "Bell in current window"); } - break; } return (1); --- 76,100 ---- return (0); if (s->curw != wl || s->flags & SESSION_UNATTACHED) wl->flags |= WINLINK_BELL; + if (s->flags & SESSION_UNATTACHED) + return (1); + visual = options_get_number(&s->options, "visual-bell"); action = options_get_number(&s->options, "bell-action"); ! for (i = 0; i < ARRAY_LENGTH(&clients); i++) { ! c = ARRAY_ITEM(&clients, i); ! if (c == NULL || c->session != s) ! continue; ! if (!visual) { ! tty_bell(&c->tty); ! continue; } ! if (c->session->curw->window == w) status_message_set(c, "Bell in current window"); + else if (action == BELL_ANY) { + status_message_set(c, "Bell in window %u", + winlink_find_by_window(&s->windows, w)->idx); } } return (1);