From: enometh <57609820+enometh@users.noreply.github.com> Date: Mon, 11 Nov 2024 23:33:38 +0000 (+0530) Subject: src/output.c: skip painting output when session is not active X-Git-Url: https://git.mdlowis.com/?a=commitdiff_plain;h=2d3be5ab561056314206d98e6a592a4ec9f99a77;p=proto%2Flabwc.git src/output.c: skip painting output when session is not active On switching to a console vt when an application is painting, labwc produces a stream of log messages of the form ``` `00:00:52.345 [ERROR] [../src/output-state.c:45] Failed to commit frame` lines. `` This patch tries to follow the lead from the solution to this problem in https://github.com/WayfireWM/wayfire/pull/2484.patch As noted in that commit message, this patch depends on unreleased patches to seatd (master) to work reliably, and there may be a a risk of locking up the labwc if it is used with the seatd-0.8.0. Check that the session is initialized (is not NULL) before checking it is active. Co-authored-by: Madhu --- diff --git a/src/output.c b/src/output.c index 20e29458..e217a8a3 100644 --- a/src/output.c +++ b/src/output.c @@ -115,6 +115,13 @@ output_frame_notify(struct wl_listener *listener, void *data) return; } + /* + * skip painting the session when it exists but is not active. + */ + if (output->server->session && !output->server->session->active) { + return; + } + if (!output->scene_output) { /* * TODO: This is a short term fix for issue #1667,