Bug Fix: Prevent track transition race condition

A race on the source queue setter could cause a crash. Prevent that by
not attempting to set a nil input node.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
This commit is contained in:
Christopher Snowhill 2025-06-11 19:01:53 -07:00
parent cb9c4d9c01
commit 23be3b7f03

View file

@ -176,8 +176,10 @@
Node *finalNode = nil; Node *finalNode = nil;
if(rubberbandNode) { if(rubberbandNode) {
finalNode = [[controller bufferChain] finalNode]; finalNode = [[controller bufferChain] finalNode];
if(finalNode) {
[rubberbandNode setPreviousNode:finalNode]; [rubberbandNode setPreviousNode:finalNode];
} }
}
return !!finalNode; return !!finalNode;
} }
@ -186,8 +188,10 @@
Node *finalNode = nil; Node *finalNode = nil;
if(rubberbandNode) { if(rubberbandNode) {
finalNode = [[controller bufferChain] finalNode]; finalNode = [[controller bufferChain] finalNode];
if(finalNode) {
[rubberbandNode setPreviousNode:finalNode]; [rubberbandNode setPreviousNode:finalNode];
} }
}
NSArray *DSPs = [self DSPs]; NSArray *DSPs = [self DSPs];