mirror of
https://gitlab.freedesktop.org/xorg/xserver.git
synced 2026-02-18 02:30:36 +01:00
We must not modify the contents of a client pixmap. If there's an available window buffer, we re-use that for the window pixmap. Otherwise we just allocate a new one. This also avoids Present client hangs due to xwl_present_buffer_release not getting called for the buffer release event. v2: * Use xwl_pixmap_get_buffer_release_cb instead of keeping track of the flip pixmap in xwl_window. * Dispose of xwl_window_buffer in xwl_window_swap_pixmap called from damage_report. v3: * Use xwl_window->surface_pixmap in damage_report. v4: * Don't re-use client pixmaps as window buffers. * Clear xwl_window_buffer->pixmap before calling xwl_window_buffer_maybe_dispose in xwl_window_swap_pixmap, to prevent it from clearing the buffer release callback. v5: * Keep using xwl_window_buffers_get_pixmap in xwl_window_attach_buffer. * Always keep a reference to the old window pixmap in _swap_pixmap, drop it in damage_report. Fixes: |
||
|---|---|---|
| .. | ||
| kdrive | ||
| vfb | ||
| xfree86 | ||
| xnest | ||
| xquartz | ||
| xwayland | ||
| xwin | ||
| meson.build | ||