Remove the need for rust nightly
My pidfd implmentation is simple enough, and Option.contains() is not worth requiring nightly.
This commit is contained in:
@ -6,6 +6,7 @@ use std::{io, process::exit, time::{Duration, Instant}};
|
||||
use zbus::{dbus_interface, fdo::{self, DBusProxy, RequestNameFlags}, names::{BusName, UniqueName, WellKnownName}, ConnectionBuilder, MessageHeader};
|
||||
|
||||
use bscreensaver_command::{bscreensaver_command, BCommand};
|
||||
use bscreensaver_util::opt_contains;
|
||||
|
||||
const OUR_DBUS_NAME: &str = "org.freedesktop.ScreenSaver";
|
||||
const HEARTBEAT_INTERVAL: Duration = Duration::from_secs(45);
|
||||
@ -157,7 +158,7 @@ async fn dbus_task(state: Arc<Mutex<State>>) -> anyhow::Result<()> {
|
||||
let args = name_owner_changed.args()?;
|
||||
match args.name() {
|
||||
BusName::WellKnown(name) if name == OUR_DBUS_NAME => {
|
||||
if args.new_owner().is_none() || args.new_owner().as_ref().filter(|no| no != &our_unique_name).is_some() {
|
||||
if args.new_owner().is_none() || opt_contains(&args.new_owner(), &our_unique_name) {
|
||||
info!("Lost bus name {}; quitting", OUR_DBUS_NAME);
|
||||
exit(0);
|
||||
}
|
||||
|
Reference in New Issue
Block a user