From 6898dd04a61cb06bd2238128be27e1f0ab6d6e62 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sun, 20 Feb 2011 17:31:21 +0000 Subject: [PATCH] Fix crash on enabling tape mode. git-svn-id: svn://localhost/ardour2/branches/3.0@8911 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/control_point.cc | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gtk2_ardour/control_point.cc b/gtk2_ardour/control_point.cc index 7632642adc..801bd5bb82 100644 --- a/gtk2_ardour/control_point.cc +++ b/gtk2_ardour/control_point.cc @@ -118,6 +118,14 @@ ControlPoint::visible () const void ControlPoint::reset (double x, double y, AutomationList::iterator mi, uint32_t vi, ShapeType shape) { + /* If this is too big, libart will confuse itself and segfault after it casts the bounding box + of this automation line to ints. Sigh. + */ + + if (x > INT32_MAX) { + x = INT32_MAX; + } + _model = mi; _view_index = vi; move_to (x, y, shape);