Skip to content

Commit 2835f7f

Browse files
committed
Apply cond slice fix
1 parent b288fb0 commit 2835f7f

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

comfy/context_windows.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,11 +146,13 @@ def get_resized_cond(self, cond_in: list[dict], x_in: torch.Tensor, window: Inde
146146
# when in dictionary, look for tensors and CONDCrossAttn [comfy/conds.py] (has cond attr that is a tensor)
147147
for cond_key, cond_value in new_cond_item.items():
148148
if isinstance(cond_value, torch.Tensor):
149-
if cond_value.ndim < self.dim and cond_value.size(0) == x_in.size(self.dim):
149+
if (self.dim < cond_value.ndim and cond_value(self.dim) == x_in.size(self.dim)) or \
150+
(cond_value.ndim < self.dim and cond_value.size(0) == x_in.size(self.dim)):
150151
new_cond_item[cond_key] = window.get_tensor(cond_value, device)
151152
# if has cond that is a Tensor, check if needs to be subset
152153
elif hasattr(cond_value, "cond") and isinstance(cond_value.cond, torch.Tensor):
153-
if cond_value.cond.ndim < self.dim and cond_value.cond.size(0) == x_in.size(self.dim):
154+
if (self.dim < cond_value.cond.ndim and cond_value.cond.size(self.dim) == x_in.size(self.dim)) or \
155+
(cond_value.cond.ndim < self.dim and cond_value.cond.size(0) == x_in.size(self.dim)):
154156
new_cond_item[cond_key] = cond_value._copy_with(window.get_tensor(cond_value.cond, device))
155157
elif cond_key == "num_video_frames": # for SVD
156158
new_cond_item[cond_key] = cond_value._copy_with(cond_value.cond)

0 commit comments

Comments
 (0)