From 2a1fd273ee7a1b235010fa7bbcbc4eaaf2659dcd Mon Sep 17 00:00:00 2001 From: Ivan Kravets Date: Tue, 11 Jul 2023 20:13:26 +0300 Subject: [PATCH] Normalize configuration file path --- platformio/home/rpc/handlers/project.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/platformio/home/rpc/handlers/project.py b/platformio/home/rpc/handlers/project.py index 65d05063..f833c7ce 100644 --- a/platformio/home/rpc/handlers/project.py +++ b/platformio/home/rpc/handlers/project.py @@ -37,8 +37,12 @@ class ProjectRPC(BaseRPCHandler): def config_call(init_kwargs, method, *args): assert isinstance(init_kwargs, dict) assert "path" in init_kwargs - project_dir = get_project_dir() - if os.path.isfile(init_kwargs["path"]): + if os.path.isdir(init_kwargs["path"]): + project_dir = init_kwargs["path"] + init_kwargs["path"] = os.path.join(init_kwargs["path"], "platformio.ini") + elif os.path.isfile(init_kwargs["path"]): + project_dir = get_project_dir() + else: project_dir = os.path.dirname(init_kwargs["path"]) with fs.cd(project_dir): return getattr(ProjectConfig(**init_kwargs), method)(*args)