Skip to content

Commit

Permalink
Merge pull request #3571 from mattmcclinch/sanitize-tuplet
Browse files Browse the repository at this point in the history
compare duration() of tuplet with calculated duration to see if it…
  • Loading branch information
lasconic committed Mar 26, 2018
2 parents 08d7f4b + 6e87c9d commit ebf4e54
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion libmscore/tuplet.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1093,7 +1093,9 @@ void Tuplet::sanitizeTuplet()
}
testDuration = testDuration / ratio();
testDuration.reduce();
if ((testDuration - baseLenDuration).reduced().numerator() != 0) {
if (elements().back()->tick() + elements().back()->actualTicks() - elements().front()->tick() > testDuration.ticks())
return; // this tuplet has missing elements; do not sanitize
if (!(testDuration == baseLenDuration && baseLenDuration == duration())) {
Fraction f = testDuration * Fraction(1, ratio().denominator());
f.reduce();
Fraction fbl(1, f.denominator());
Expand Down

0 comments on commit ebf4e54

Please sign in to comment.