summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2006-11-01 19:02:03 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2006-11-01 19:02:03 +0000
commitbc3afc09e816853ca3edbfff37dc2c90e2808595 (patch)
tree5ea0764fe4efbe4f9a830ed0a2758ab294dca136
parenta0e85682664b612e555c5757cac3945acc2e8034 (diff)
fix bug in find_next_region() when starting frame matches region start
git-svn-id: svn://localhost/ardour2/trunk@1049 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r--libs/ardour/playlist.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/ardour/playlist.cc b/libs/ardour/playlist.cc
index 139f62cb91..481521f475 100644
--- a/libs/ardour/playlist.cc
+++ b/libs/ardour/playlist.cc
@@ -1252,6 +1252,7 @@ Playlist::find_next_region (nframes_t frame, RegionPoint point, int dir)
boost::shared_ptr<Region> ret;
nframes_t closest = max_frames;
+
for (RegionList::iterator i = regions.begin(); i != regions.end(); ++i) {
nframes_t distance;
@@ -1273,7 +1274,7 @@ Playlist::find_next_region (nframes_t frame, RegionPoint point, int dir)
switch (dir) {
case 1: /* forwards */
- if (pos > frame) {
+ if (pos >= frame) {
if ((distance = pos - frame) < closest) {
closest = distance;
ret = r;
@@ -1284,7 +1285,7 @@ Playlist::find_next_region (nframes_t frame, RegionPoint point, int dir)
default: /* backwards */
- if (pos < frame) {
+ if (pos <= frame) {
if ((distance = frame - pos) < closest) {
closest = distance;
ret = r;