mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-05-05 14:38:07 +02:00
compositor-drm: Reshuffle drm_output_render
Call drm_output_render unconditionally, doing an early exit if we're already rendering a client buffer on the primary plane. Signed-off-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Pekka Paalanen <pekka.paalanen@collabora.co.uk>
This commit is contained in:
parent
5bb8f58fd2
commit
4e84f7dd32
1 changed files with 6 additions and 2 deletions
|
|
@ -752,6 +752,11 @@ drm_output_render(struct drm_output *output, pixman_region32_t *damage)
|
|||
struct weston_compositor *c = output->base.compositor;
|
||||
struct drm_backend *b = to_drm_backend(c);
|
||||
|
||||
/* If we already have a client buffer promoted to scanout, then we don't
|
||||
* want to render. */
|
||||
if (output->fb_pending)
|
||||
return;
|
||||
|
||||
if (b->use_pixman)
|
||||
drm_output_render_pixman(output, damage);
|
||||
else
|
||||
|
|
@ -823,8 +828,7 @@ drm_output_repaint(struct weston_output *output_base,
|
|||
if (output->disable_pending || output->destroy_pending)
|
||||
return -1;
|
||||
|
||||
if (!output->fb_pending)
|
||||
drm_output_render(output, damage);
|
||||
drm_output_render(output, damage);
|
||||
if (!output->fb_pending)
|
||||
return -1;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue