We just copy the SHM buffer straight into a separately-allocated GBM BO, so no need to take a reference on the buffer itself or keep it from being released. All drm_output_try_view_on_plane really does at this point is to call the prepare_*_view function for the requisite plane type, and take a ref on the weston_buffer from the client. Given that we don't need to keep the client buffer alive, we can short-circuit drm_output_try_view_on_plane, and instead just call drm_output_prepare_cursor_view directly when we have a cursor plane. This also makes it easier to just remove drm_output_try_view_on_plane in following patches when we merge the overlay/scanout plane path into one. Doing so gives us two clearly-separated paths: one for copying a SHM client buffer into a cursor, and another for directly scanning out client content. Signed-off-by: Daniel Stone <daniels@collabora.com>dev
parent
873e32137e
commit
81e74ff334
Loading…
Reference in new issue