mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-08 15:54:57 +01:00
temporal: fix implementation of timepos_t::operator+= (BBT_Offset const &)
TempoMap::bbtwalk_to_quarters() converts the distance of the walk into quarters, but we need the endpoint of the walk
This commit is contained in:
parent
998dceb96a
commit
b6e1846c39
1 changed files with 2 additions and 1 deletions
|
|
@ -778,7 +778,8 @@ timepos_t::operator+= (Temporal::BBT_Offset const & offset)
|
||||||
{
|
{
|
||||||
TempoMap::SharedPtr tm (TempoMap::use());
|
TempoMap::SharedPtr tm (TempoMap::use());
|
||||||
if (is_beats()) {
|
if (is_beats()) {
|
||||||
v = build (true, tm->bbtwalk_to_quarters (beats(), offset).to_ticks());
|
Temporal::Beats r = tm->quarters_at (tm->bbt_walk (tm->bbt_at (beats()), offset));
|
||||||
|
v = build (true, r.to_ticks());
|
||||||
} else {
|
} else {
|
||||||
v = build (false, tm->superclock_at (tm->bbt_walk (BBT_Argument (this->superclocks(), tm->bbt_at (*this)), offset)));
|
v = build (false, tm->superclock_at (tm->bbt_walk (BBT_Argument (this->superclocks(), tm->bbt_at (*this)), offset)));
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue