aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/syscons
diff options
context:
space:
mode:
authorBruce Evans <bde@FreeBSD.org>2017-04-08 10:00:39 +0000
committerBruce Evans <bde@FreeBSD.org>2017-04-08 10:00:39 +0000
commiteeab8fcc4b8e9951453b9037c9d9ddafaf0193cb (patch)
treec7205b364cb5ba8d8901a1cf24c15135134e0601 /sys/dev/syscons
parenta077708d356b8c6c896cac91a44848115a574bd2 (diff)
Notes
Diffstat (limited to 'sys/dev/syscons')
-rw-r--r--sys/dev/syscons/scvgarndr.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/syscons/scvgarndr.c b/sys/dev/syscons/scvgarndr.c
index b56f59b009642..124e841a501bd 100644
--- a/sys/dev/syscons/scvgarndr.c
+++ b/sys/dev/syscons/scvgarndr.c
@@ -1167,9 +1167,6 @@ vga_pxlmouse_direct(scr_stat *scp, int x, int y, int on)
uint8_t *u8;
int bpp;
- if (!on)
- return;
-
bpp = scp->sc->adp->va_info.vi_depth;
if ((bpp == 16) && (scp->sc->adp->va_info.vi_pixel_fsizes[1] == 5))
@@ -1181,6 +1178,9 @@ vga_pxlmouse_direct(scr_stat *scp, int x, int y, int on)
xend = imin(x + 16, scp->xpixel);
yend = imin(y + 16, scp->ypixel);
+ if (on)
+ goto do_on;
+
p = scp->sc->adp->va_window + y_old * line_width + x_old * pixel_size;
for (i = 0; i < (yend_old - y_old); i++) {
@@ -1205,7 +1205,9 @@ vga_pxlmouse_direct(scr_stat *scp, int x, int y, int on)
p += line_width;
}
+ return;
+do_on:
p = scp->sc->adp->va_window + y * line_width + x * pixel_size;
for (i = 0; i < (yend - y); i++) {