From beab2b9d48cee844ed2564d2b345d4936d5ffe28 Mon Sep 17 00:00:00 2001 From: Manuel Schmid Date: Thu, 6 Jun 2024 18:20:14 +0200 Subject: [PATCH] fix: fallback to given value if not parseable --- modules/config.py | 3 ++- modules/extra_utils.py | 11 +++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/modules/config.py b/modules/config.py index 0733d716..14a6f52b 100644 --- a/modules/config.py +++ b/modules/config.py @@ -209,8 +209,9 @@ def get_config_item_or_set_default(key, default_value, validator, disable_empty_ v = os.getenv(key) if v is not None: + v = try_parse_bool(v) print(f"Environment: {key} = {v}") - config_dict[key] = try_parse_bool(v) + config_dict[key] = v if key not in config_dict: config_dict[key] = default_value diff --git a/modules/extra_utils.py b/modules/extra_utils.py index b4c83061..c4056020 100644 --- a/modules/extra_utils.py +++ b/modules/extra_utils.py @@ -29,7 +29,10 @@ def get_files_from_folder(folder_path, extensions=None, name_filter=None): def try_parse_bool(value: str) -> str | bool: - value_eval = literal_eval(value.strip().title()) - if type(value_eval) is bool: - return value_eval - return value + try: + value_eval = literal_eval(value.strip().title()) + if type(value_eval) is bool: + return value_eval + return value + except ValueError | TypeError: + return value