# HG changeset patch # User Mark Round # Date 1336998342 -3600 # Node ID 7002bb17cc5eceb8c1ab792bdaf10bd96c08c8d8 # Parent 7bf48bc7de23ac9479e41e6333db421e84b4e1ab posix: workaround lack of TIOCGWINSZ on Irix (issue3449) On an Irix 6.5.24 system, TIOCGWINSZ is not available. This means that any usage of the "hg" tool that looks up the terminal size (e.g. "hg help") will fail with an AttributeError. A simple work-around is just to wrap this block in mercurial/posix.py with a try/except so that it ends up using the default 80 characters width. diff -r 7bf48bc7de23 -r 7002bb17cc5e mercurial/posix.py --- a/mercurial/posix.py Mon May 14 12:56:43 2012 +0200 +++ b/mercurial/posix.py Mon May 14 13:25:42 2012 +0100 @@ -409,10 +409,13 @@ continue if not os.isatty(fd): continue - arri = fcntl.ioctl(fd, termios.TIOCGWINSZ, '\0' * 8) - width = array.array('h', arri)[1] - if width > 0: - return width + try: + arri = fcntl.ioctl(fd, termios.TIOCGWINSZ, '\0' * 8) + width = array.array('h', arri)[1] + if width > 0: + return width + except AttributeError: + pass except ValueError: pass except IOError, e: