alistair23-linux/drivers/tty/vt
Melchior FRANZ e882f7158f tty: vt: initialize softcursor_original correctly
add_softcursor() stores the contents of the text buffer position in this
variable before drawing the softcursor, whereas hide_softcursor() writes
the value back. A value of -1 means that no cursor has been drawn and
therefore no character is to be restored. softcursor_original, however,
is only implicitly initialized with 0. Therefore, when hide_softcursor
is called for the first time (console_init -> con_init -> redraw_screen
-> hide_cursor), it wrongly writes 0x0000 in the top left corner of
the text buffer. Normally, this is just as black as the rest of the
screen (vc_video_erase_char) and can't be seen, but it appears as a
black cursor rectangle on non-black backgrounds e.g. with boot option
"vt.global_cursor_default=0 vt.color=0xf0". softcursor_original needs
to be initialized with -1.

Signed-off-by: Melchior FRANZ <mfranz@aon.at>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-02-06 23:42:25 -08:00
..
.gitignore
consolemap.c
cp437.uni
defkeymap.c_shipped
defkeymap.map
keyboard.c tty/vt/keyboard: use memdup_user to simplify code 2016-02-06 23:27:46 -08:00
Makefile
selection.c tty: Prepare for destroying line discipline on hangup 2016-01-27 15:01:44 -08:00
vc_screen.c
vt.c tty: vt: initialize softcursor_original correctly 2016-02-06 23:42:25 -08:00
vt_ioctl.c