Edge case fixes

This commit is contained in:
kijai 2026-04-15 00:47:25 +03:00
parent 4ba28caa8c
commit 0c7b5addba
2 changed files with 2 additions and 3 deletions

View File

@ -1640,7 +1640,6 @@ class SAM31Tracker(nn.Module):
output_dict = {"cond_frame_outputs": {}, "non_cond_frame_outputs": {}} output_dict = {"cond_frame_outputs": {}, "non_cond_frame_outputs": {}}
all_masks = [] all_masks = []
idev = comfy.model_management.intermediate_device() idev = comfy.model_management.intermediate_device()
empty = lambda: torch.zeros(0, self.image_size, self.image_size, device=idev, dtype=dt)
mux_state = None mux_state = None
if initial_masks is not None: if initial_masks is not None:
mux_state = MultiplexState(initial_masks.shape[0], self.num_multiplex, device, dt) mux_state = MultiplexState(initial_masks.shape[0], self.num_multiplex, device, dt)
@ -1710,7 +1709,7 @@ class SAM31Tracker(nn.Module):
for i in range(mux_state.total_valid_entries): for i in range(mux_state.total_valid_entries):
keep_alive[i] = 1 keep_alive[i] = 1
else: else:
all_masks.append(empty()) all_masks.append(None)
if pbar is not None: if pbar is not None:
pbar.update(1) pbar.update(1)
# Skip to backbone advance at end of loop # Skip to backbone advance at end of loop

View File

@ -50,7 +50,7 @@ class SAM3TokenizerWrapper(sd1_clip.SD1Tokenizer):
def tokenize_with_weights(self, text: str, return_word_ids=False, **kwargs): def tokenize_with_weights(self, text: str, return_word_ids=False, **kwargs):
parsed = _parse_prompts(text) parsed = _parse_prompts(text)
if len(parsed) <= 1 and parsed[0][1] == 1: if len(parsed) <= 1 and (not parsed or parsed[0][1] == 1):
return super().tokenize_with_weights(text, return_word_ids, **kwargs) return super().tokenize_with_weights(text, return_word_ids, **kwargs)
# Tokenize each prompt part separately, store per-part batches and metadata # Tokenize each prompt part separately, store per-part batches and metadata
inner = getattr(self, self.clip) inner = getattr(self, self.clip)