]> git.hungrycats.org Git - linux/commitdiff
[PATCH] Fix softcursor
authorAndrew Morton <akpm@osdl.org>
Mon, 19 Jan 2004 13:07:42 +0000 (05:07 -0800)
committerLinus Torvalds <torvalds@home.osdl.org>
Mon, 19 Jan 2004 13:07:42 +0000 (05:07 -0800)
From: Pavel Machek <pavel@ucw.cz>

Softcursor was broken for half of 2.5 series.  This fixes it by first
hiding cursor _then_ hiding softcursor.  Very simple mistake...

drivers/char/vt.c

index 464c3404d4dc7979a6cc4d3235a67bc563a94283..dcb286822cbb18fd70490fb82343997091f4b808 100644 (file)
@@ -530,17 +530,22 @@ static void add_softcursor(int currcons)
                sw->con_putc(vc_cons[currcons].d, i, y, x);
 }
 
-static void hide_cursor(int currcons)
+static void hide_softcursor(int currcons)
 {
-       if (currcons == sel_cons)
-               clear_selection();
        if (softcursor_original != -1) {
                scr_writew(softcursor_original,(u16 *) pos);
                if (DO_UPDATE)
                        sw->con_putc(vc_cons[currcons].d, softcursor_original, y, x);
                softcursor_original = -1;
        }
+}
+
+static void hide_cursor(int currcons)
+{
+       if (currcons == sel_cons)
+               clear_selection();
        sw->con_cursor(vc_cons[currcons].d,CM_ERASE);
+       hide_softcursor(currcons);
 }
 
 static void set_cursor(int currcons)