Skip to content

Commit

Permalink
drm/nouveau: make cursor_set implementation consistent with other dri…
Browse files Browse the repository at this point in the history
…vers

When xorg state tracker wants to hide the cursor it calls set_cursor
with NULL buffer_handle and size=0x0, but nouveau refuses to hide it
because size is not 64x64... which is a bit odd. Both radeon and intel
check buffer_handle before validating size of cursor, so make nouveau
implementation consistent with them.

Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
  • Loading branch information
Marcin Slusarz authored and Ben Skeggs committed May 16, 2011
1 parent 52eba8d commit b4fa9d0
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 6 deletions.
6 changes: 3 additions & 3 deletions drivers/gpu/drm/nouveau/nv04_crtc.c
Original file line number Diff line number Diff line change
Expand Up @@ -943,14 +943,14 @@ nv04_crtc_cursor_set(struct drm_crtc *crtc, struct drm_file *file_priv,
struct drm_gem_object *gem;
int ret = 0;

if (width != 64 || height != 64)
return -EINVAL;

if (!buffer_handle) {
nv_crtc->cursor.hide(nv_crtc, true);
return 0;
}

if (width != 64 || height != 64)
return -EINVAL;

gem = drm_gem_object_lookup(dev, file_priv, buffer_handle);
if (!gem)
return -ENOENT;
Expand Down
6 changes: 3 additions & 3 deletions drivers/gpu/drm/nouveau/nv50_crtc.c
Original file line number Diff line number Diff line change
Expand Up @@ -349,14 +349,14 @@ nv50_crtc_cursor_set(struct drm_crtc *crtc, struct drm_file *file_priv,
struct drm_gem_object *gem;
int ret = 0, i;

if (width != 64 || height != 64)
return -EINVAL;

if (!buffer_handle) {
nv_crtc->cursor.hide(nv_crtc, true);
return 0;
}

if (width != 64 || height != 64)
return -EINVAL;

gem = drm_gem_object_lookup(dev, file_priv, buffer_handle);
if (!gem)
return -ENOENT;
Expand Down

0 comments on commit b4fa9d0

Please sign in to comment.