oxwm

https://git.tonybtw.com/oxwm.git git://git.tonybtw.com/oxwm.git

Setting config.path to enable hot-reload of changed config file

Commit
506050a5811bb68b5676474da7e1d30b47cc4ec0
Parent
7fc1259
Author
Scott DeJong <ScottADeJong@gmail.com>
Date
2025-12-18 13:13:09

Diff

diff --git a/src/bin/main.rs b/src/bin/main.rs
index 1398a6a..172106a 100644
--- a/src/bin/main.rs
+++ b/src/bin/main.rs
@@ -65,15 +65,18 @@ fn load_config(
 
     let config_directory = path.parent();
 
-    match oxwm::config::parse_lua_config(&config_string, config_directory) {
-        Ok(config) => Ok((config, false)),
-        Err(_error) => {
-            let config = oxwm::config::parse_lua_config(TEMPLATE, None).map_err(|error| {
-                format!("Error: Failed to parse default template config:\n{}", error)
-            })?;
-            Ok((config, true))
-        }
-    }
+    let (mut config, had_broken_config) =
+        match oxwm::config::parse_lua_config(&config_string, config_directory) {
+            Ok(config) => (config, false),
+            Err(_error) => {
+                let config = oxwm::config::parse_lua_config(TEMPLATE, None).map_err(|error| {
+                    format!("Error: Failed to parse default template config:\n{}", error)
+                })?;
+                (config, true)
+            }
+        };
+    config.path = Some(path);
+    Ok((config, had_broken_config))
 }
 
 fn init_config() -> Result<(), Box<dyn std::error::Error>> {