output: destroy swapchain when disabled
This avoids consuming GPU memory when an output is disabled.
This commit is contained in:
parent
6bfb930aa7
commit
456b971099
|
@ -715,6 +715,15 @@ bool wlr_output_commit(struct wlr_output *output) {
|
|||
wlr_output_schedule_done(output);
|
||||
}
|
||||
|
||||
// Destroy the swapchains when an output is disabled
|
||||
if ((output->pending.committed & WLR_OUTPUT_STATE_ENABLED) &&
|
||||
!output->pending.enabled) {
|
||||
wlr_swapchain_destroy(output->swapchain);
|
||||
output->swapchain = NULL;
|
||||
wlr_swapchain_destroy(output->cursor_swapchain);
|
||||
output->cursor_swapchain = NULL;
|
||||
}
|
||||
|
||||
// Unset the front-buffer when a new buffer will replace it or when the
|
||||
// output is getting disabled
|
||||
if ((output->pending.committed & WLR_OUTPUT_STATE_BUFFER) ||
|
||||
|
|
Loading…
Reference in New Issue