Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 334969

Summary: [terminal] Terminal fails to interpret multi-command SGR sequence
Product: [Tools] Target Management Reporter: Martin Oberhuber <mober.at+eclipse>
Component: TerminalAssignee: Martin Oberhuber <mober.at+eclipse>
Status: RESOLVED FIXED QA Contact: Martin Oberhuber <mober.at+eclipse>
Severity: major    
Priority: P2 CC: eclipse
Version: 3.3   
Target Milestone: 3.3 M5   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on:    
Bug Blocks: 335410    

Description Martin Oberhuber CLA 2011-01-20 20:37:11 EST
CQ:WIND00246476

As per http://en.wikipedia.org/wiki/Ansi_terminal the ANSI "Set Graphics Rendition" command must support multiple subcommands, for example:

[1;37;40m

to set bold, white foreground, black background. The current terminal fails to interpret such multi-command style changes and applies the last change of such a sequence only (in this case: black background).

The net effect is that on some systems, this can result in black-on-black text which is unreadable and thus a severe problem.
Comment 1 Martin Oberhuber CLA 2011-01-20 20:47:51 EST
Problem was that in VT100Emulator.processAnsiCommand_m(), the current state of a style was not carried from one SGR sub-command to the next.

Fixed.
Comment 2 Martin Oberhuber CLA 2011-01-20 20:48:38 EST
While at it, I also implemented the "blink" and "underline" attributes.