backend/drm: fix modifiers for cursor plane buffers
In93cd3a79b2
("backend/drm: stop using GBM flags"), we stopped using the GBM_BO_USE_LINEAR flag in favor of a modifier list set to { DRM_FORMAT_MOD_LINEAR }. However, the last argument of drm_plane_init_surface disables modifiers -- so the buffer will just get allocated with an implicit modifier, without necessarily being LINEAR. To fix this, allow modifiers when allocating the cursor buffers. wlr_drm_plane.formats should already have the necessary LINEAR restrictions. Fixes:93cd3a79b2
("backend/drm: stop using GBM flags")
This commit is contained in:
parent
f17b0f975d
commit
04d89a8bc5
|
@ -891,7 +891,7 @@ static bool drm_connector_set_cursor(struct wlr_output *output,
|
||||||
h = ret ? 64 : h;
|
h = ret ? 64 : h;
|
||||||
|
|
||||||
if (!drm_plane_init_surface(plane, drm, w, h,
|
if (!drm_plane_init_surface(plane, drm, w, h,
|
||||||
DRM_FORMAT_ARGB8888, false)) {
|
DRM_FORMAT_ARGB8888, true)) {
|
||||||
wlr_drm_conn_log(conn, WLR_ERROR, "Cannot allocate cursor resources");
|
wlr_drm_conn_log(conn, WLR_ERROR, "Cannot allocate cursor resources");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue