summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorAndrew M. Kuchling <amk@amk.ca>2000-06-10 23:39:05 (GMT)
committerAndrew M. Kuchling <amk@amk.ca>2000-06-10 23:39:05 (GMT)
commit5185a084b795759f83101d40122c0b6e207157c9 (patch)
treedf870a92757666c6d7e7584280458062794d9254 /Lib
parentb7f198e01aa1abbb337289eaa9db0d139ae9de96 (diff)
downloadcpython-5185a084b795759f83101d40122c0b6e207157c9.zip
cpython-5185a084b795759f83101d40122c0b6e207157c9.tar.gz
cpython-5185a084b795759f83101d40122c0b6e207157c9.tar.bz2
Applied simplifications suggested by Greg Stein.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/curses/wrapper.py19
1 files changed, 4 insertions, 15 deletions
diff --git a/Lib/curses/wrapper.py b/Lib/curses/wrapper.py
index 1de17ee..fd8804d 100644
--- a/Lib/curses/wrapper.py
+++ b/Lib/curses/wrapper.py
@@ -17,7 +17,6 @@ def wrapper(func, *rest):
wrapper().
"""
- res = None
try:
# Initialize curses
stdscr=curses.initscr()
@@ -30,21 +29,11 @@ def wrapper(func, *rest):
# a special value like curses.KEY_LEFT will be returned
stdscr.keypad(1)
- res = apply(func, (stdscr,) + rest)
- except:
- # In the event of an error, restore the terminal
- # to a sane state.
+ return apply(func, (stdscr,) + rest)
+
+ finally:
+ # Restore the terminal to a sane state on the way out.
stdscr.keypad(0)
curses.echo() ; curses.nocbreak()
curses.endwin()
- # Pass the exception upwards
- (exc_type, exc_value, exc_traceback) = sys.exc_info()
- raise exc_type, exc_value, exc_traceback
- else:
- # Set everything back to normal
- stdscr.keypad(0)
- curses.echo() ; curses.nocbreak()
- curses.endwin() # Terminate curses
-
- return res