9a52cefd130dedb74d4a2480d221e8a9e2c8af25
Playlist::_split_region copies the region and BBT_Time member is default constructed so position is bar 1 beat 1. The regions sample position is then initialized to the new position using the property list. Playlist::add_region_internal is then used to add new regions to the playlist which calls region->set_position() but as the region position has already been initialized it does not recompute the _bbt_time member based on the new sample position. Then when a tempo change occurs and Region::update_after_tempo_map_change is called the default initialized _bbt_time member is used to incorrectly determine the new sample position. So the change removes the initialization of the new region position using the property list initialization method and just lets the playlist set the position of the region in Playlist::add_region_internal so that the region _bbt_time member is recomputed in Region::set_position_internal.
When building with MSVC make sure any backends / panners etc get copied to the correct target folder
Please see the Ardour web site at http://ardour.org/ for all documentation..
For information on building ardour:
http://ardour.org/development.html
Description
Languages
C++
56.5%
C
39.6%
JavaScript
1.3%
Lua
0.9%
Python
0.6%
Other
0.9%