Merge lp:~spiv/bzr/no-sigwinch-583941 into lp:bzr/2.1
Status: | Superseded |
---|---|
Proposed branch: | lp:~spiv/bzr/no-sigwinch-583941 |
Merge into: | lp:bzr/2.1 |
Diff against target: |
204 lines (+66/-40) 4 files modified
NEWS (+7/-1) bzrlib/osutils.py (+47/-35) bzrlib/tests/test_osutils.py (+12/-0) bzrlib/ui/text.py (+0/-4) |
To merge this branch: | bzr merge lp:~spiv/bzr/no-sigwinch-583941 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Martin Packman (community) | Approve | ||
Martin Pool | Approve | ||
Review via email: mp+26005@code.launchpad.net |
This proposal has been superseded by a proposal from 2010-05-27.
Commit message
Remove the SIGWINCH handler; instead just poll for terminal width as needed. (#583941)
Description of the change
Final, simple fix for EINTR?
This simply removes the SIGWINCH handler introduced in 2.1.0rc1, and adjusts the osutils.
I'm a little concerned that the logic inside terminal_width looks somewhat different now, because it tries _terminal_size before it tries $COLUMNS — but, strangely, the SIGWINCH handler had actually been setting $COLUMNS, so I don't think this is actually so different. And I do think the new code is clearer. I'd welcome second opinions though.
Finally, here's the diffstat to whet your appetite:
$ bzr diff | diffstat
NEWS | 8 +++++++-
bzrlib/osutils.py | 42 +++++++
bzrlib/ui/text.py | 4 ----
3 files changed, 16 insertions(+), 38 deletions(-)
As with the previous proposal for this, I've tested interactively that e.g. bzr log -n0 from a large HTTP branch continues successfully while the terminal is rapidly resized, unlike before.
DoIt - love to get this behind us