Skip to content

wayland: Fix lease termination in wp_lease_v1_destroy()

Vlad Zahorodnii requested to merge work/zzag/backend-drm-fix-lease-cleanup into master

If a drm lease is destroyed, e.g. the app has unexpectedly terminated, only the finished event will be sent. The leaseRevoked signal won't be emitted so the drm backend can't clean up DrmOutput::m_lease. Since m_lease can be a dangling pointer, the drm backend can crash in DrmGpu::updateOutputs() when it tries to determine if m_lease is still alive and was not terminated by closing the lease fd on the client side.

Merge request reports

Loading