diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2006-11-01 12:01:10 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2006-11-01 12:01:10 +0000 |
commit | 2001efa08838b4dd839cc5b4f6aa3203c4441c5f (patch) | |
tree | 4b512cb880e052488b6c877d10d457cf48bd2ccf /gtk2_ardour | |
parent | dc4080964842def7044e97ade06dd30b7176ea4d (diff) |
commit crash caused by not displaying first and last points of an automation line at large zooms
git-svn-id: svn://localhost/ardour2/trunk@1047 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/audio_region_view.cc | 2 | ||||
-rw-r--r-- | gtk2_ardour/automation_line.cc | 11 |
2 files changed, 6 insertions, 7 deletions
diff --git a/gtk2_ardour/audio_region_view.cc b/gtk2_ardour/audio_region_view.cc index d9cbfd01c3..aaeea53878 100644 --- a/gtk2_ardour/audio_region_view.cc +++ b/gtk2_ardour/audio_region_view.cc @@ -155,8 +155,6 @@ AudioRegionView::init (Gdk::Color& basic_color, bool wfd) gain_line = new AudioRegionGainLine (foo, trackview.session(), *this, *group, audio_region()->envelope()); - cerr << "Initializing RV for " << audio_region()->name() << " with " << audio_region()->envelope().size() << " points\n"; - if (!(_flags & EnvelopeVisible)) { gain_line->hide (); } else { diff --git a/gtk2_ardour/automation_line.cc b/gtk2_ardour/automation_line.cc index a319b325ed..6002a69353 100644 --- a/gtk2_ardour/automation_line.cc +++ b/gtk2_ardour/automation_line.cc @@ -746,10 +746,13 @@ AutomationLine::determine_visible_control_points (ALPoints& points) this_rx = (uint32_t) rint (tx); this_ry = (uint32_t) rint (ty); - if (view_index && pi != npoints && (this_rx == prev_rx) && (this_ry == prev_ry) || - ((this_rx - prev_rx) < (box_size + 2))) { + if (view_index && pi != npoints && /* not the first, not the last */ + + /* same point or too close to the last one horizontally */ + + (((this_rx == prev_rx) && (this_ry == prev_ry)) || ((this_rx - prev_rx) < (box_size + 2)))) { continue; - } + } /* ok, we should display this point */ @@ -811,8 +814,6 @@ AutomationLine::determine_visible_control_points (ALPoints& points) /* discard extra CP's to avoid confusing ourselves */ - cerr << "here we are, view_index = " << view_index << " cp size = " << control_points.size() << " np = " << npoints << endl; - while (control_points.size() > view_index) { ControlPoint* cp = control_points.back(); control_points.pop_back (); |