Messages in this thread |  | | | Date | Wed, 07 May 2008 21:46:37 -0700 (PDT) | | Subject | 2.6.26-rcX VC console scrolling regression | | From | David Miller <> |
| |
This change:
commit c9e587abfdec2c2aaa55fab83bcb4972e2f84f9b Author: Jan Engelhardt <jengelh@computergmbh.de> Date: Tue Apr 29 00:59:46 2008 -0700
vt: fix background color on line feed
A command that causes a line feed while a background color is active, such as
perl -e 'print "x" x 60, "\e[44m", "x" x 40, "\e[0m\n"' and perl -e 'print "x" x 40, "\e[44m\n", "x" x 40, "\e[0m\n"'
causes the line that was started as a result of the line feed to be completely filled with the currently active background color instead of the default color.
When scrolling, part of the current screen is memcpy'd/memmove'd to the new region, and the new line(s) that will appear as a result are cleared using memset. However, the lines are cleared with vc->vc_video_erase_char, causing them to be colored with the currently active background color. This is different from X11 terminal emulators which always paint the new lines with the default background color (e.g. `xterm -bg black`).
The clear operation (\e[1J and \e[2J) also use vc_video_erase_char, so a new vc->vc_scrl_erase_char is introduced with contains the erase character used for scrolling, which is built from vc->vc_def_color instead of vc->vc_color.
Signed-off-by: Jan Engelhardt <jengelh@computergmbh.de> Cc: "Antonino A. Daplas" <adaplas@pol.net> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Causes garbage characters to appear at the end of lines on my VCs when scrolling.
They look like lowercase 'c' characters with a '.' above them, and they are colored light blue. The rest of the console text is fine.
I think it might be because my VC gets put into a UTF8 mode or something like that via the init scripts? It seems to start happening right when the init scripts print "Setting up console font and keymap", which seems to come from /etc/init.d/console-setup which runs /bin/setupcon
This is with a stock Ubuntu 7.10 installation.
|  |