[Summary] Blocked redundant skip marker (during skip ranges consolidation) updates which used to lead to unnecessary overhead and redundant session events
Conflicts: libs/ardour/ardour/session.h libs/ardour/session.cc
This commit is contained in:
parent
48fdb28153
commit
297ebd33bb
@ -1196,9 +1196,7 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop
|
|||||||
void sync_locations_to_skips ();
|
void sync_locations_to_skips ();
|
||||||
void _sync_locations_to_skips ();
|
void _sync_locations_to_skips ();
|
||||||
|
|
||||||
PBD::ScopedConnectionList loop_update_connections;
|
bool _ignore_skips_updates;
|
||||||
PBD::ScopedConnectionList mark_update_connections;
|
|
||||||
PBD::ScopedConnectionList skip_update_connections;
|
|
||||||
|
|
||||||
PBD::ScopedConnectionList punch_connections;
|
PBD::ScopedConnectionList punch_connections;
|
||||||
void auto_punch_start_changed (Location *);
|
void auto_punch_start_changed (Location *);
|
||||||
|
@ -208,6 +208,7 @@ Session::Session (AudioEngine &eng,
|
|||||||
, _post_transport_work (0)
|
, _post_transport_work (0)
|
||||||
, cumulative_rf_motion (0)
|
, cumulative_rf_motion (0)
|
||||||
, rf_scale (1.0)
|
, rf_scale (1.0)
|
||||||
|
, _ignore_skips_updates (false)
|
||||||
, _locations (new Locations (*this))
|
, _locations (new Locations (*this))
|
||||||
, step_speed (0)
|
, step_speed (0)
|
||||||
, outbound_mtc_timecode_frame (0)
|
, outbound_mtc_timecode_frame (0)
|
||||||
@ -1325,11 +1326,16 @@ Session::update_marks (Location*)
|
|||||||
void
|
void
|
||||||
Session::update_skips (Location* loc, bool consolidate)
|
Session::update_skips (Location* loc, bool consolidate)
|
||||||
{
|
{
|
||||||
|
if (_ignore_skips_updates) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
Locations::LocationList skips;
|
Locations::LocationList skips;
|
||||||
|
|
||||||
if (consolidate) {
|
if (consolidate) {
|
||||||
consolidate_skips (loc);
|
PBD::Unwinder<bool> uw (_ignore_skips_updates, true);
|
||||||
}
|
consolidate_skips (loc);
|
||||||
|
}
|
||||||
|
|
||||||
sync_locations_to_skips ();
|
sync_locations_to_skips ();
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user