summaryrefslogtreecommitdiff
path: root/libs/canvas/xfade_curve.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/canvas/xfade_curve.cc')
-rw-r--r--libs/canvas/xfade_curve.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/canvas/xfade_curve.cc b/libs/canvas/xfade_curve.cc
index 0d7d7a5245..c8038aa227 100644
--- a/libs/canvas/xfade_curve.cc
+++ b/libs/canvas/xfade_curve.cc
@@ -178,13 +178,14 @@ XFadeCurve::get_path(Rect const & area, Cairo::RefPtr<Cairo::Context> context, C
Points::size_type left = 0;
Points::size_type right = c.n_samples - 1;
+ assert (left < right);
// we should really really do a binary search rather than iterate
for (Points::size_type idx = 0; idx < c.n_samples - 1; ++idx) {
left = idx;
window_space = item_to_window (Duple (c.samples[idx].x, 0.0), false);
if (window_space.x >= area.x0) break;
}
- for (Points::size_type idx = c.n_samples; idx >= left;) {
+ for (Points::size_type idx = c.n_samples; right > left;) {
--idx;
window_space = item_to_window (Duple (c.samples[idx].x, 0.0), false);
if (window_space.x <= area.x1) break;