diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2014-07-03 09:07:44 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2014-07-03 09:11:32 +0100 |
commit | 57d0cc82d851b95d4e3b1821287dd3ffd1cf6e3b (patch) | |
tree | 0cf2a8f774ad04e57b3ff77a079afe8db9f1af7d | |
parent | 24c9bac7eb6e17b55044d719bab74d16fd68c450 (diff) |
sna: Clear the cursor reference from the CRTC if the update fails
This should allow it to be restored correctly the next time it gets
shown.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r-- | src/sna/sna_display.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c index 55795855..f472f2c3 100644 --- a/src/sna/sna_display.c +++ b/src/sna/sna_display.c @@ -4398,9 +4398,9 @@ sna_set_cursor_position(ScrnInfoPtr scrn, int x, int y) if (sna_crtc->cursor != cursor) { arg.flags |= DRM_MODE_CURSOR_BO; arg.handle = cursor->handle; - arg.width = arg.height = cursor->size; } + arg.width = arg.height = cursor->size; arg.flags |= DRM_MODE_CURSOR_MOVE; crtc->cursor_in_range = true; } else { @@ -4410,6 +4410,7 @@ disable: arg.flags = DRM_MODE_CURSOR_BO; arg.width = arg.height = 0; } + cursor = NULL; } __DBG(("%s: CRTC:%d (%d, %d), handle=%d, flags=%x (old cursor handle=%d), move? %d, update handle? %d\n", |