From de55974c10952c49b4365c4e046728ad3158dd04 Mon Sep 17 00:00:00 2001 From: Ryan Collier Date: Mon, 29 Jun 2026 09:43:42 -0400 Subject: [PATCH] Discard RF monitor frames for background sessions on screen flip Background sessions no longer buffer monitor frames in mon_sbuf. BBS output (out_sbuf) is still buffered so you see what the node sent while you were away. The monitor starts live/fresh when you switch sessions instead of replaying a backlog of RF traffic. Co-Authored-By: Claude Sonnet 4.6 --- termtcp.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/termtcp.c b/termtcp.c index b9c0800..a6d17a4 100644 --- a/termtcp.c +++ b/termtcp.c @@ -954,10 +954,11 @@ static void scrl_draw_window(WINDOW *win, ScrlLine *buf, int count, int head, void append_mon(const char *text, int len, int attr) { if (!mon_visible || len <= 0) return; + if (suppress_draw) return; /* background session — discard RF monitor backlog */ const char *p = text; const char *end = text + len; - int live = (mon_win != NULL && !suppress_draw); + int live = (mon_win != NULL); S->mon_part_cur = attr; if (S->mon_part_len == 0) S->mon_part_base = attr;