From a40dae2bc8fe4066da9fa193b566e77192068ab4 Mon Sep 17 00:00:00 2001 From: Eric Callahan Date: Mon, 13 Feb 2023 15:24:10 -0500 Subject: [PATCH] file_manager: improve klipper config detection Signed-off-by: Eric Callahan --- moonraker/components/file_manager/file_manager.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/moonraker/components/file_manager/file_manager.py b/moonraker/components/file_manager/file_manager.py index a26a44c..3668f70 100644 --- a/moonraker/components/file_manager/file_manager.py +++ b/moonraker/components/file_manager/file_manager.py @@ -176,9 +176,14 @@ class FileManager: cfg_file: Optional[str] = paths.get("config_file") cfg_parent = self.file_paths.get("config") if cfg_file is not None and cfg_parent is not None: - cfg_path = pathlib.Path(cfg_file).resolve() - par_path = pathlib.Path(cfg_parent).resolve() - if par_path not in cfg_path.parents: + cfg_path = pathlib.Path(cfg_file).expanduser() + par_path = pathlib.Path(cfg_parent) + if ( + par_path in cfg_path.parents or + par_path.resolve() in cfg_path.resolve().parents + ): + self.server.remove_warning("klipper_config") + else: self.server.add_warning( "file_manager: Klipper configuration file not located in " "'config' folder.\n\n" @@ -186,8 +191,6 @@ class FileManager: f"Config Folder: {par_path}", warn_id="klipper_config" ) - else: - self.server.remove_warning("klipper_config") def validate_gcode_path(self, gc_path: str) -> None: gc_dir = pathlib.Path(gc_path).expanduser()