diff options
author | Robin Gareus <robin@gareus.org> | 2015-10-08 18:24:45 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-10-08 18:24:45 +0200 |
commit | ffe06f7d3effa27e792812460fefc6acf5b0b33c (patch) | |
tree | ec13335a5a85cbab7a9b8ccd6b2381d2d5c3b3fa /libs/ardour | |
parent | 014f8a582fa2a696d5c27e8a775d6a8d024c50f4 (diff) |
fix region "valid-transient" property
Diffstat (limited to 'libs/ardour')
-rw-r--r-- | libs/ardour/region.cc | 4 | ||||
-rw-r--r-- | libs/ardour/source.cc | 13 |
2 files changed, 11 insertions, 6 deletions
diff --git a/libs/ardour/region.cc b/libs/ardour/region.cc index bf01238fb4..516adb6ee5 100644 --- a/libs/ardour/region.cc +++ b/libs/ardour/region.cc @@ -1284,6 +1284,10 @@ Region::_set_state (const XMLNode& node, int /*version*/, PropertyChange& what_c } } + // saved property is invalid, region-transients are not saved + if (_transients.size() == 0){ + _valid_transients = false; + } return 0; } diff --git a/libs/ardour/source.cc b/libs/ardour/source.cc index f6c591a5b1..29093035c2 100644 --- a/libs/ardour/source.cc +++ b/libs/ardour/source.cc @@ -173,15 +173,16 @@ Source::has_been_analysed() const void Source::set_been_analysed (bool yn) { - { + if (yn) { + if (0 == load_transients (get_transients_path())) { + yn = false; + } + } + if (yn != _analysed); { Glib::Threads::Mutex::Lock lm (_analysis_lock); _analysed = yn; } - - if (yn) { - load_transients (get_transients_path()); - AnalysisChanged(); // EMIT SIGNAL - } + AnalysisChanged(); // EMIT SIGNAL } int |