From 993ed4f0512736b9fde73f9cd794cfcfc5490f83 Mon Sep 17 00:00:00 2001 From: pfl Date: Fri, 9 Jan 2026 15:11:19 +0100 Subject: [PATCH] Fix curses error when info window is full - Wrap addstr newlines in try/except blocks - Prevents crash when writing to window boundary - Info window has scrollok=False, so cursor can't move beyond bounds --- ui.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/ui.py b/ui.py index 981d330..e66199c 100644 --- a/ui.py +++ b/ui.py @@ -653,7 +653,10 @@ class UIManager: f"{limit_display}^0\n", 0) # Blank lines to fill - self.info_window.addstr("\n") + try: + self.info_window.addstr("\n") + except curses.error: + pass # Line 3: Team headers and player lists teams = game_state.player_tracker.get_players_by_team() @@ -768,7 +771,10 @@ class UIManager: print_colored(self.info_window, line, 0) # Blank lines to fill - self.info_window.addstr("\n") + try: + self.info_window.addstr("\n") + except curses.error: + pass # List spectators on one line spec_list = " ".join(spec_players) @@ -776,7 +782,10 @@ class UIManager: print_colored(self.info_window, line, 0) # Blank lines to fill - self.info_window.addstr("\n") + try: + self.info_window.addstr("\n") + except curses.error: + pass # Separator separator = "^7" + "═" * (max_x - 1) + "^7"