drm/radeon/kms: fix cursor image off-by-one error
Nicholas Miell [Fri, 30 Sep 2011 02:07:14 +0000 (19:07 -0700)]
The mouse cursor hotspot calculation when the cursor is partially off the
top or left side of the screen was off by one.

Fixes https://bugs.freedesktop.org/show_bug.cgi?id=41158

Signed-off-by: Nicholas Miell <nmiell@gmail.com>
Reviewed-by: Michel Dänzer <michel@daenzer.net>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>

drivers/gpu/drm/radeon/radeon_cursor.c

index 3189a7e..c495575 100644 (file)
@@ -209,9 +209,9 @@ int radeon_crtc_cursor_move(struct drm_crtc *crtc,
        int w = radeon_crtc->cursor_width;
 
        if (x < 0)
-               xorigin = -x + 1;
+               xorigin = -x;
        if (y < 0)
-               yorigin = -y + 1;
+               yorigin = -y;
        if (xorigin >= CURSOR_WIDTH)
                xorigin = CURSOR_WIDTH - 1;
        if (yorigin >= CURSOR_HEIGHT)