systemd: Fix SystemdUnit::exists

This commit is contained in:
Vicki Pfau 2025-06-27 17:04:48 -07:00
parent 1d55b0d828
commit bbd62df54b

View file

@ -94,6 +94,11 @@ impl<'dbus> SystemdUnit<'dbus> {
let expected_error = format!("Unit {name} not loaded."); let expected_error = format!("Unit {name} not loaded.");
match manager.get_unit(name).await { match manager.get_unit(name).await {
Ok(_) => Ok(true), Ok(_) => Ok(true),
Err(zbus::Error::MethodError(name, _, _))
if name == "org.freedesktop.systemd1.NoSuchUnit" =>
{
Ok(false)
}
Err(zbus::Error::Failure(message)) if message == expected_error => Ok(false), Err(zbus::Error::Failure(message)) if message == expected_error => Ok(false),
Err(e) => Err(e.into()), Err(e) => Err(e.into()),
} }