On Wed, 24 Oct 2007, Dustin J. Mitchell wrote:
> + # Parse the output of stty -a, if we have a terminal
> + if os.environ.get('TERM', ''):
> + out = os.popen("stty -a").read()
> + m = re.search(r"columns (\d+);", out)
> + if m:
> + return int(m.group(1))
1. This needs to be in a try/except block, in case popen fails or stty
exits with an error, or something.
2. It's possible for TERM to be defined even if there's no terminal
available. I'd suggest using os.isatty(), or simply relying on
try/except to catch any error (and not bothering with any sort of
pre-test).
3. You should probably set LC_ALL="C". (Or is that already done at a
higher level?)
4. Even if stty works, there's no guarantee that it the output will
include the number of columns. I see that you are already handling
that case.
--apb (Alan Barrett)
_______________________________________________
Svnmerge mailing list
[email protected]
http://www.orcaware.com/mailman/listinfo/svnmerge