X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ftuplet-iterator.cc;h=bf9a223684840885a32edf9d1efbcfa5354676b0;hb=1e3e8b30c8c5b77013e4aef821ddecf9cd6635a8;hp=872ccae48d662215f64c844b5f4b9cadc920062c;hpb=08560a1b8076630c4fc6cb9b902614d8b74fd6fc;p=lilypond.git 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 ();