From 4031f584ef8ce09fb112375cc97e03c7618b9a2c Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Tue, 12 Aug 2025 13:24:30 -0700 Subject: [PATCH] Don't crash if `GreeterAccessibilityState::config()` fails `cosmic-comp` should run without needing the greeter to be running (or installed). --- src/backend/mod.rs | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/backend/mod.rs b/src/backend/mod.rs index a4be03d9..3ecff86f 100644 --- a/src/backend/mod.rs +++ b/src/backend/mod.rs @@ -73,14 +73,19 @@ pub fn init_backend_auto( .seats .add_seat(initial_seat.clone()); - let helper = greeter::GreeterAccessibilityState::config()?; - let greeter_state = match greeter::GreeterAccessibilityState::get_entry(&helper) { - Ok(s) => s, - Err((errs, s)) => { - for err in errs { - tracing::error!("Error loading greeter state: {err:?}"); + let greeter_state = match greeter::GreeterAccessibilityState::config() { + Ok(helper) => match greeter::GreeterAccessibilityState::get_entry(&helper) { + Ok(s) => s, + Err((errs, s)) => { + for err in errs { + tracing::error!("Error loading greeter state: {err:?}"); + } + s } - s + }, + Err(_) => { + tracing::info!("`cosmic-greeter` state not found."); + greeter::GreeterAccessibilityState::default() } };