From c3d30cde5a4e1ba4d8e044fec7677629269b9443 Mon Sep 17 00:00:00 2001 From: David Kastrup Date: Fri, 11 Jan 2013 09:44:06 +0100 Subject: [PATCH] If TimeScaledMusic carries a duration, let it override tupletSpannerDuration --- lily/tuplet-iterator.cc | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lily/tuplet-iterator.cc b/lily/tuplet-iterator.cc index 872ccae48d..bf9a223684 100644 --- a/lily/tuplet-iterator.cc +++ b/lily/tuplet-iterator.cc @@ -126,12 +126,17 @@ Tuplet_iterator::process (Moment m) void Tuplet_iterator::construct_children () { - spanner_duration_ = music_get_length (); + if (Duration *d = unsmob_duration (get_music ()->get_property ("duration"))) + spanner_duration_ = d->get_length (); + else + { + spanner_duration_ = music_get_length (); - Moment *mp - = unsmob_moment (get_outlet ()->get_property ("tupletSpannerDuration")); - if (mp) - spanner_duration_ = min (mp->main_part_, spanner_duration_); + Moment *mp + = unsmob_moment (get_outlet ()->get_property ("tupletSpannerDuration")); + if (mp) + spanner_duration_ = min (mp->main_part_, spanner_duration_); + } Music_wrapper_iterator::construct_children (); -- 2.39.5