diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2024-01-07 05:23:08 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-07 05:23:08 +0000 |
commit | 30aa5e0a7ca7f2de61940b97aa642ae4f6d7d17f (patch) | |
tree | 39f2e1e3f7a53886538794ac712ae0f4ddd07069 /modules | |
parent | cab1d839b5bf04949f22226aa712b3c9370059a4 (diff) | |
parent | ec9acb31450536a9258192351d6a26421efd7eb4 (diff) | |
download | stable-diffusion-webui-gfx803-30aa5e0a7ca7f2de61940b97aa642ae4f6d7d17f.tar.gz stable-diffusion-webui-gfx803-30aa5e0a7ca7f2de61940b97aa642ae4f6d7d17f.tar.bz2 stable-diffusion-webui-gfx803-30aa5e0a7ca7f2de61940b97aa642ae4f6d7d17f.zip |
Merge pull request #14560 from Nuullll/condfunc-warning
Handle CondFunc exception when resolving attributes
Diffstat (limited to 'modules')
-rw-r--r-- | modules/sd_hijack_utils.py | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/modules/sd_hijack_utils.py b/modules/sd_hijack_utils.py index f8684475..79bf6e46 100644 --- a/modules/sd_hijack_utils.py +++ b/modules/sd_hijack_utils.py @@ -11,10 +11,14 @@ class CondFunc: break
except ImportError:
pass
- for attr_name in func_path[i:-1]:
- resolved_obj = getattr(resolved_obj, attr_name)
- orig_func = getattr(resolved_obj, func_path[-1])
- setattr(resolved_obj, func_path[-1], lambda *args, **kwargs: self(*args, **kwargs))
+ try:
+ for attr_name in func_path[i:-1]:
+ resolved_obj = getattr(resolved_obj, attr_name)
+ orig_func = getattr(resolved_obj, func_path[-1])
+ setattr(resolved_obj, func_path[-1], lambda *args, **kwargs: self(*args, **kwargs))
+ except AttributeError:
+ print(f"Warning: Failed to resolve {orig_func} for CondFunc hijack")
+ pass
self.__init__(orig_func, sub_func, cond_func)
return lambda *args, **kwargs: self(*args, **kwargs) def __init__(self, orig_func, sub_func, cond_func): |