crecord: use try/except for import of curses
Not only does this improve fragility with 'if os.name == ...' it will help
future patches enable the behavior to fallback to use plain record when curses
is unavailable (e.g. python compiled without curses support).
--- a/mercurial/crecord.py Wed Dec 23 22:28:52 2015 +0900
+++ b/mercurial/crecord.py Wed Dec 16 10:33:19 2015 -0800
@@ -30,15 +30,18 @@
# locale encoding correctly. --immerrr
locale.setlocale(locale.LC_ALL, '')
-# os.name is one of: 'posix', 'nt', 'dos', 'os2', 'mac', or 'ce'
-if os.name == 'posix':
+try:
import curses
import fcntl
import termios
-else:
+ curses.error
+ fcntl.ioctl
+ termios.TIOCGWINSZ
+except ImportError:
# I have no idea if wcurses works with crecord...
try:
import wcurses as curses
+ curses.error
except ImportError:
# wcurses is not shipped on Windows by default
pass