diff options
-rw-r--r-- | CHANGES | 8 | ||||
-rw-r--r-- | server.c | 10 |
2 files changed, 16 insertions, 2 deletions
@@ -1,3 +1,9 @@ +04 November 2008 + +* Don't try to redraw status line when showing a prompt or message; if it does, + the status timer is never reset so it redraws on every loop. Spotted by + joshe. + 09 October 2008 * Translate 256 colours into 16 if 256 is not available, same as screen does. @@ -681,4 +687,4 @@ (including mutt, emacs). No status bar yet and no key remapping or other customisation. -$Id: CHANGES,v 1.164 2008-10-09 22:00:33 nicm Exp $ +$Id: CHANGES,v 1.165 2008-11-04 20:55:58 nicm Exp $ @@ -1,4 +1,4 @@ -/* $Id: server.c,v 1.83 2008-09-29 16:03:27 nicm Exp $ */ +/* $Id: server.c,v 1.84 2008-11-04 20:55:58 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -393,8 +393,16 @@ server_check_timers(struct client *c) if (c->message_string != NULL && timercmp(&tv, &c->message_timer, >)) server_clear_client_message(c); + if (c->message_string != NULL || c->prompt_string != NULL) { + /* + * Don't need timed redraw for messages/prompts so bail now. + * The status timer isn't reset when they are redrawn anyway. + */ + return; + } if (!options_get_number(&s->options, "status")) return; + interval = options_get_number(&s->options, "status-interval"); if (interval == 0) return; |