fix Session::audible_frame() return when transport speed has been reversed, by resetting last_stop_frame at the turnaround point

git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@4143 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis 2008-11-12 06:47:59 +00:00
parent 606705310b
commit 3d2d31028d
2 changed files with 4 additions and 4 deletions

View file

@ -1377,7 +1377,7 @@ Session::audible_frame () const
nframes_t ret;
nframes_t offset;
nframes_t tf;
if (_transport_speed == 0.0f) {
return last_stop_frame;
}
@ -1410,7 +1410,7 @@ Session::audible_frame () const
} else {
tf = _transport_frame;
}
ret = tf;
if (!non_realtime_work_pending()) {

View file

@ -207,8 +207,7 @@ Session::butler_transport_work ()
}
if (post_transport_work & PostTransportReverse) {
clear_clicks();
cumulative_rf_motion = 0;
reset_rf_scale (0);
@ -865,6 +864,7 @@ Session::set_transport_speed (float speed, bool abort)
if ((_transport_speed && speed * _transport_speed < 0.0f) || (_last_transport_speed * speed < 0.0f) || (_last_transport_speed == 0.0f && speed < 0.0f)) {
post_transport_work = PostTransportWork (post_transport_work | PostTransportReverse);
last_stop_frame = _transport_frame;
}
_last_transport_speed = _transport_speed;