summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJari Vetoniemi <mailroxas@gmail.com>2014-04-15 20:07:47 +0300
committerJari Vetoniemi <mailroxas@gmail.com>2014-04-15 20:07:47 +0300
commitf77ae857b181ace139cc702f2a997db6ade86b8c (patch)
treef70bb401c338fd4c22a84881508e78a3fd0cb93b
parentcf27013c1d1790e0d5239aa6fc34999e0f173f30 (diff)
downloadbemenu-f77ae857b181ace139cc702f2a997db6ade86b8c.tar.gz
bemenu-f77ae857b181ace139cc702f2a997db6ade86b8c.tar.bz2
bemenu-f77ae857b181ace139cc702f2a997db6ade86b8c.zip
It's better to guard whole function.
-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;
}