simon-git: putty (master): Simon Tatham

Commits to Tartarus hosted VCS tartarus-commits at lists.tartarus.org
Sun Oct 8 14:06:39 BST 2017


TL;DR:
  96a0881 Make true colour work with background-colour erase.
  e3d92df Save and restore true-colour state with the cursor.
  f353e22 Turn off true colour on SCO and VT52 colour sequences.
  916a257 Make reverse video interact correctly with true colour.

Repository:     https://git.tartarus.org/simon/putty.git
On the web:     https://git.tartarus.org/?p=simon/putty.git
Branch updated: master
Committer:      Simon Tatham <anakin at pobox.com>
Date:           2017-10-08 14:06:39

commit 96a088195fe86cb31347b42b1c262c1aa2ee0a2f
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=96a088195fe86cb31347b42b1c262c1aa2ee0a2f;hp=1a718403d40ccb88a1436eff98c82bf92268ef96
Author: Simon Tatham <anakin at pobox.com>
Date:   Sun Oct 8 13:43:27 2017 +0100

    Make true colour work with background-colour erase.
    
    Thanks to Markus Gans for reporting this bug.

 terminal.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

commit e3d92df936b97aef3cd51f1e85eb3c47409069c5
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=e3d92df936b97aef3cd51f1e85eb3c47409069c5;hp=96a088195fe86cb31347b42b1c262c1aa2ee0a2f
Author: Simon Tatham <anakin at pobox.com>
Date:   Sun Oct 8 13:45:08 2017 +0100

    Save and restore true-colour state with the cursor.
    
    I spotted this myself while looking through the code in search of the
    cause of the background-colour-erase bug: saving and restoring the
    cursor via ESC 7 / ESC 8 ought to also save and restore the current
    graphics rendition attributes including foreground and background
    colour settings, but it was not saving and restoring the new
    term->curr_truecolour along with term->curr_attr.
    
    So there's now a term->save_truecolour to keep that in, and also a
    term->alt_save_truecolour to take account of the fact that all the
    saved cursor state variables get swapped out _again_ when switching
    between the main and alternate screens.
    
    (However, there is not a term->alt_truecolour to complete the cross
    product, because the _active_ graphics rendition is carried over when
    switching between the terminal screens; it's only the _saved_ one from
    ESC 7 / ESC 8 that is saved separately. That's consistent with the
    behaviour we've had all along for ordinary fg/bg colour selection.)

 terminal.c | 8 ++++++++
 terminal.h | 1 +
 2 files changed, 9 insertions(+)

commit f353e2219e4371cda176bc37a11ddc4bb7e32516
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=f353e2219e4371cda176bc37a11ddc4bb7e32516;hp=e3d92df936b97aef3cd51f1e85eb3c47409069c5
Author: Simon Tatham <anakin at pobox.com>
Date:   Sun Oct 8 13:47:39 2017 +0100

    Turn off true colour on SCO and VT52 colour sequences.
    
    After fixing the previous two bugs, I thought it was probably a good
    idea to re-check _everywhere_ in terminal.c where curr_attr is used,
    to make sure that if curr_truecolour also needed updating at the same
    time then that was being done.

 terminal.c | 4 ++++
 1 file changed, 4 insertions(+)

commit 916a2574d5fb40ee9ce899ac93e8d31738f5bed4
web diff https://git.tartarus.org/?p=simon/putty.git;a=commitdiff;h=916a2574d5fb40ee9ce899ac93e8d31738f5bed4;hp=f353e2219e4371cda176bc37a11ddc4bb7e32516
Author: Simon Tatham <anakin at pobox.com>
Date:   Sun Oct 8 13:49:54 2017 +0100

    Make reverse video interact correctly with true colour.
    
    ATTR_REVERSE was being handled in the front ends, and was causing the
    foreground and background colours to be switched. (I'm not completely
    sure why I made that design decision; it might be purely historical,
    but then again, it might also be because reverse video is one effect
    on the fg and bg colours that must still be performed even in unusual
    frontend-specific situations like display-driven monochrome mode.)
    
    This affected both explicit reverse video enabled using SGR 7, and
    also the transient reverse video arising from mouse selection. Thanks
    to Markus Gans for reporting the bug in the latter, which when I
    investigated it turned out to affect the former as well.

 terminal.h       | 2 +-
 unix/gtkwin.c    | 6 ++++++
 windows/window.c | 6 ++++++
 3 files changed, 13 insertions(+), 1 deletion(-)



More information about the tartarus-commits mailing list