Skip to content

Commit a2f50e4

Browse files
committed
Fix crash when removing source from merger
1 parent 2dcda51 commit a2f50e4

1 file changed

Lines changed: 7 additions & 4 deletions

File tree

Source/UI/SignalChainManager.cpp

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -229,20 +229,23 @@ void SignalChainManager::updateVisibleEditors(GenericEditor* activeEditor,
229229

230230
// std::cout << editorArray.size() << " " << t << std::endl;
231231

232-
bool merger;
232+
bool merger = false;
233233

234234
if (editorArray.size() > 0)
235235
{
236236
// take the next processor in the array
237237
GenericProcessor* p2 = (GenericProcessor*) editorArray[0]->getProcessor();
238238
merger = (p2->isMerger() && p2->stillHasSource());
239-
if (merger)
239+
if (p2->isMerger())
240240
{
241241
// std::cout << "We've got a merger!" << std::endl;
242242
//p2->switchIO(0);
243243
p2->setMergerSourceNode(p->getSourceNode());
244-
MergerEditor* me = (MergerEditor*) editorArray[0];
245-
me->switchSource();
244+
if (p2->stillHasSource())
245+
{
246+
MergerEditor* me = static_cast<MergerEditor*>(p2->getEditor());
247+
me->switchSource();
248+
}
246249
// p2->setMergerSourceNode(nullptr);
247250
}
248251
}

0 commit comments

Comments
 (0)