From d4902ce87d76d31df201fe14d5b52501f0ddfb58 Mon Sep 17 00:00:00 2001 From: Martin Rieder <74277074+martinrieder@users.noreply.github.com> Date: Mon, 1 Jul 2024 20:37:24 +0200 Subject: [PATCH] Catch also ValueError (#392) In Windows might ValueError be raised instead of the already catched exceptions in some cases (depending on the Python version) Fixes point 2 of https://github.com/wireviz/WireViz/pull/318#pullrequestreview-1457016602 --- src/wireviz/wireviz.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/wireviz/wireviz.py b/src/wireviz/wireviz.py index b33c9b5..656107e 100755 --- a/src/wireviz/wireviz.py +++ b/src/wireviz/wireviz.py @@ -419,8 +419,8 @@ def _get_yaml_data_and_path(inp: Union[str, Path, Dict]) -> Tuple[Dict, Path]: yaml_path = Path(inp).expanduser().resolve(strict=True) # if no FileNotFoundError exception happens, get file contents yaml_str = open_file_read(yaml_path).read() - except (FileNotFoundError, OSError) as e: - # if inp is a long YAML string, Pathlib will raise OSError: [Errno 63] + except (FileNotFoundError, OSError, ValueError) as e: + # if inp is a long YAML string, Pathlib will raise OSError: [errno.ENAMETOOLONG] # (in Windows, it seems OSError [errno.EINVAL] might be raised in some cases) # when trying to expand and resolve it as a path. # Catch this error, but raise any others