summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/draw/curses.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/lib/draw/curses.c b/lib/draw/curses.c
index afe0a98..0f6fdd2 100644
--- a/lib/draw/curses.c
+++ b/lib/draw/curses.c
@@ -252,6 +252,9 @@ static unsigned int _bmDrawCursesDisplayedCount(const bmMenu *menu)
static void _bmDrawCursesEndWin(void)
{
+ if (!curses.stdscr)
+ return;
+
freopen(TTY, "w", stdout);
if (curses.refresh)
@@ -260,12 +263,10 @@ static void _bmDrawCursesEndWin(void)
if (curses.endwin)
curses.endwin();
- if (curses.stdscr) {
- dup2(curses.oldStdin, STDIN_FILENO);
- dup2(curses.oldStdout, STDOUT_FILENO);
- close(curses.oldStdin);
- close(curses.oldStdout);
- }
+ dup2(curses.oldStdin, STDIN_FILENO);
+ dup2(curses.oldStdout, STDOUT_FILENO);
+ close(curses.oldStdin);
+ close(curses.oldStdout);
curses.stdscr = NULL;
}