Issue #5622: Fix curses.wrapper to raise correct exception if curses
initialization fails.
diff --git a/Lib/curses/wrapper.py b/Lib/curses/wrapper.py
index 3cdaa82..5183ce7 100644
--- a/Lib/curses/wrapper.py
+++ b/Lib/curses/wrapper.py
@@ -43,7 +43,8 @@
return func(stdscr, *args, **kwds)
finally:
# Set everything back to normal
- stdscr.keypad(0)
- curses.echo()
- curses.nocbreak()
- curses.endwin()
+ if 'stdscr' in locals():
+ stdscr.keypad(0)
+ curses.echo()
+ curses.nocbreak()
+ curses.endwin()