Always set up _last_position on set_position_internal so that the playlist range...
[ardour.git] / libs / ardour / region.cc
index d337cf6625e84cbc677cd62b2121070d1de9b1d3..f761602ef6e07fb87c216fdba2630dc414a3b413 100644 (file)
@@ -596,8 +596,13 @@ Region::set_position (framepos_t pos)
 void
 Region::set_position_internal (framepos_t pos, bool allow_bbt_recompute)
 {
+       /* We emit a change of Properties::position even if the position hasn't changed
+          (see Region::set_position), so we must always set this up so that
+          e.g. Playlist::notify_region_moved doesn't use an out-of-date last_position.
+       */
+       _last_position = _position;
+       
        if (_position != pos) {
-               _last_position = _position;
                _position = pos;
 
                /* check that the new _position wouldn't make the current