aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAUTOMATIC <16777216c@gmail.com>2023-05-14 10:27:50 +0000
committerAUTOMATIC <16777216c@gmail.com>2023-05-14 10:27:50 +0000
commit1a43524018ea3e64b93be2abc2a49b6159515442 (patch)
tree4d2e3a736558cf6b1bc65bf969c1652c6a5d2f8f
parent5f5435eb1aafbd2dfda3e00024d8528addd17e03 (diff)
downloadstable-diffusion-webui-gfx803-1a43524018ea3e64b93be2abc2a49b6159515442.tar.gz
stable-diffusion-webui-gfx803-1a43524018ea3e64b93be2abc2a49b6159515442.tar.bz2
stable-diffusion-webui-gfx803-1a43524018ea3e64b93be2abc2a49b6159515442.zip
fix model loading twice in some situations
-rw-r--r--modules/sd_hijack.py3
-rw-r--r--modules/sd_models.py3
2 files changed, 6 insertions, 0 deletions
diff --git a/modules/sd_hijack.py b/modules/sd_hijack.py
index 7e50f1ab..14e7f799 100644
--- a/modules/sd_hijack.py
+++ b/modules/sd_hijack.py
@@ -216,6 +216,9 @@ class StableDiffusionModelHijack:
self.comments = []
def get_prompt_lengths(self, text):
+ if self.clip is None:
+ return "-", "-"
+
_, token_count = self.clip.process_texts([text])
return token_count, self.clip.get_target_prompt_token_count(token_count)
diff --git a/modules/sd_models.py b/modules/sd_models.py
index 4c9a0a1f..dddbc6e1 100644
--- a/modules/sd_models.py
+++ b/modules/sd_models.py
@@ -414,6 +414,9 @@ class SdModelData:
def get_sd_model(self):
if self.sd_model is None:
with self.lock:
+ if self.sd_model is not None:
+ return self.sd_model
+
try:
load_model()
except Exception as e: