xserver: Branch 'master'

Keith Packard keithp at kemper.freedesktop.org
Mon May 11 15:48:14 PDT 2015


 hw/xfree86/drivers/modesetting/drmmode_display.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

New commits:
commit c3ce9d8fd404ca1d4697a104ce4899525dd43c51
Author: Adel Gadllah <adel.gadllah at gmail.com>
Date:   Fri May 1 17:43:41 2015 +0200

    modesetting: Fix software cursor fallback
    
    The code in drmmode_set_cursor does not properly handle the case where
    drmModeSetCursor2 returns any other error than EINVAL and silently fails to set
    a cursor.
    
    So only return when the drmModeSetCursor2 succeeds (i.e returns 0) and disable
    the cursor2 usage on EINVAL.
    
    References: https://bugzilla.redhat.com/show_bug.cgi?id=1205725
    Signed-off-by: Adel Gadllah <adel.gadllah at gmail.com>
    Reviewed-by: Michel Dänzer <michel at daenzer.net>
    Reviewed-by: Rob Clark <robdclark at gmail.com>
    Signed-off-by: Keith Packard <keithp at keithp.com>

diff --git a/hw/xfree86/drivers/modesetting/drmmode_display.c b/hw/xfree86/drivers/modesetting/drmmode_display.c
index 1ea799b..a8de5f9 100644
--- a/hw/xfree86/drivers/modesetting/drmmode_display.c
+++ b/hw/xfree86/drivers/modesetting/drmmode_display.c
@@ -427,10 +427,10 @@ drmmode_set_cursor(xf86CrtcPtr crtc)
             drmModeSetCursor2(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id,
                               handle, ms->cursor_width, ms->cursor_height,
                               cursor->bits->xhot, cursor->bits->yhot);
+        if (!ret)
+            return;
         if (ret == -EINVAL)
             use_set_cursor2 = FALSE;
-        else
-            return;
     }
 
     ret = drmModeSetCursor(drmmode->fd, drmmode_crtc->mode_crtc->crtc_id, handle,


More information about the xorg-commit mailing list