From b93335a741e008a341d8b3d61d6315200da6ff3b Mon Sep 17 00:00:00 2001 From: Marius Vlad Date: Thu, 7 Mar 2024 11:05:17 +0200 Subject: [PATCH] backend-pipewire: Move region initialization at the start Failure to do so, might cause a crash if the output repaint happens before the pipewire pipeline started -- calling pixman_region32_fini on a uninitialized region. Fixes 2abe4efcf7, "libweston/backends: Move damage flush into backends" Signed-off-by: Marius Vlad --- libweston/backend-pipewire/pipewire.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libweston/backend-pipewire/pipewire.c b/libweston/backend-pipewire/pipewire.c index 56d5af5b..5d17892b 100644 --- a/libweston/backend-pipewire/pipewire.c +++ b/libweston/backend-pipewire/pipewire.c @@ -735,11 +735,11 @@ pipewire_output_repaint(struct weston_output *base) assert(output); + pixman_region32_init(&damage); + if (pw_stream_get_state(output->stream, NULL) != PW_STREAM_STATE_STREAMING) goto out; - pixman_region32_init(&damage); - weston_output_flush_damage_for_primary_plane(base, &damage); if (!pixman_region32_not_empty(&damage))