Sequencer - Fixed a crash on override track clearing
This commit is contained in:
parent
7f6db48a61
commit
3939a9e560
1 changed files with 4 additions and 6 deletions
|
@ -603,20 +603,18 @@ void T_SyncViewImpl_::checkSelection( ) noexcept
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
auto& sync{ Common::Sync( ) };
|
auto& sync{ Common::Sync( ) };
|
||||||
auto const* const curve{ sync.getCurve(
|
auto const* const ovr{ selId->isOverride ? sync.getOverride( selId->id ) : nullptr };
|
||||||
selId->isOverride
|
auto const* const curve{ sync.getCurve( ovr ? ovr->inputNames( )[ 0 ] : selId->id ) };
|
||||||
? sync.getOverride( selId->id )->inputNames( )[ 0 ]
|
|
||||||
: selId->id ) };
|
|
||||||
|
|
||||||
// Missing curve
|
// Missing curve
|
||||||
if ( !( curve || selId->isOverride ) ) {
|
if ( !curve ) {
|
||||||
// Remove segment/point selection
|
// Remove segment/point selection
|
||||||
if ( selSegment ) {
|
if ( selSegment ) {
|
||||||
selSegment.clear( );
|
selSegment.clear( );
|
||||||
selPoint.clear( );
|
selPoint.clear( );
|
||||||
}
|
}
|
||||||
// If there's no matching input, unselect the track
|
// If there's no matching input, unselect the track
|
||||||
if ( !sync.hasInput( selId->id ) ) {
|
if ( !( ovr || sync.hasInput( selId->id ) ) ) {
|
||||||
selId.clear( );
|
selId.clear( );
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue