diff --git a/src/main.rs b/src/main.rs index 85c0088..bf04a85 100644 --- a/src/main.rs +++ b/src/main.rs @@ -16,7 +16,7 @@ fn main() -> Result<()> { let config = config::Config::load().ok(); // Resolve wallpaper settings - let wallpaper_settings = settings::resolve_wallpaper(&args, config)?; + let wallpaper_settings = settings::resolve_wallpaper(&args, config.as_ref())?; // Connect to X11 let session = x11::X11Session::connect()?; diff --git a/src/settings.rs b/src/settings.rs index 0ad035f..1b11a31 100644 --- a/src/settings.rs +++ b/src/settings.rs @@ -10,14 +10,14 @@ pub struct WallpaperSettings { pub fn resolve_wallpaper( args: &args::Args, - config: Option, + config: Option<&config::Config>, ) -> Result { // Borrow the config once as `Option<&Config>`. // // Avoids moving `config`, allows to: // - read values multiple times // - decide later whether we need to write a new config - let cfg = config.as_ref(); + let cfg = config; // Resolve wallpaper image path by precedence: // 1. args (`--set`, `--update`): Use path from args.