From 51e368f3f09f4e7ffe8092274ee38f25cc64768e Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Wed, 20 Apr 2011 01:24:10 +0000 Subject: [PATCH] Fix assertion failure when merging a set of nascent events which start at the same time as the last event in a ControlList. git-svn-id: svn://localhost/ardour2/branches/3.0@9384 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/evoral/src/ControlList.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/libs/evoral/src/ControlList.cpp b/libs/evoral/src/ControlList.cpp index 4fcb5a6068..62a615e44d 100644 --- a/libs/evoral/src/ControlList.cpp +++ b/libs/evoral/src/ControlList.cpp @@ -282,7 +282,7 @@ ControlList::merge_nascent (double when) } else { - /* find the range that overaps with nascent events, + /* find the range that overlaps with nascent events, and insert the contents of nascent events. */ @@ -331,8 +331,14 @@ ControlList::merge_nascent (double when) } } } - - assert (range_begin != _events.end()); + + /* Now: + range_begin is the first event on our list after the first nascent event + range_end is the first event on our list after the last nascent event + + range_begin may be equal to _events.end() iff the last event on our list + was at the same time as the first nascent event. + */ if (range_begin != _events.begin()) { /* clamp point before */