mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-06 14:54:56 +01:00
Tempo ramps - fix save/restore of region position_lock_style.
This commit is contained in:
parent
87d49cd6ec
commit
d14c660261
1 changed files with 13 additions and 17 deletions
|
|
@ -1197,9 +1197,8 @@ Region::state ()
|
|||
/* note: flags are stored by derived classes */
|
||||
|
||||
if (_position_lock_style != AudioTime) {
|
||||
stringstream str;
|
||||
str << _beat;
|
||||
node->add_property ("beat", str.str());
|
||||
snprintf (buf, sizeof(buf), "%lf", _beat);
|
||||
node->add_property ("beat", buf);
|
||||
}
|
||||
|
||||
for (uint32_t n=0; n < _sources.size(); ++n) {
|
||||
|
|
@ -1270,26 +1269,23 @@ Region::_set_state (const XMLNode& node, int /*version*/, PropertyChange& what_c
|
|||
|
||||
if (_position_lock_style == MusicTime) {
|
||||
if ((prop = node.property ("bbt-position")) == 0) {
|
||||
/* missing BBT info, revert to audio time locking */
|
||||
_position_lock_style = AudioTime;
|
||||
if ((prop = node.property ("beat")) == 0) {
|
||||
/* missing BBT info, revert to audio time locking */
|
||||
_position_lock_style = AudioTime;
|
||||
} else {
|
||||
if (sscanf (prop->value().c_str(), "%lf", &_beat) != 1) {
|
||||
_position_lock_style = AudioTime;
|
||||
}
|
||||
}
|
||||
|
||||
} else {
|
||||
if (sscanf (prop->value().c_str(), "%d|%d|%d",
|
||||
&bbt_time.bars,
|
||||
&bbt_time.beats,
|
||||
&bbt_time.ticks) != 3) {
|
||||
_position_lock_style = AudioTime;
|
||||
}
|
||||
_beat = _session.tempo_map().bbt_to_beats (bbt_time);
|
||||
}
|
||||
}
|
||||
|
||||
if (_position_lock_style == MusicTime) {
|
||||
if ((prop = node.property ("beat")) == 0) {
|
||||
/* missing BBT info, revert to audio time locking */
|
||||
_position_lock_style = AudioTime;
|
||||
} else {
|
||||
if (sscanf (prop->value().c_str(), "%lf", &_beat) != 1) {
|
||||
_position_lock_style = AudioTime;
|
||||
} else {
|
||||
_beat = _session.tempo_map().bbt_to_beats (bbt_time);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue