X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ftuplet-engraver.cc;h=80067dd13f45748a67a15d89c4dc2cb7dbee77dd;hb=0e91bb16e020081fbbecab38fb7a8ed1c1a761dd;hp=4348044fbe002c5cc15f6a69802f4839766e536d;hpb=01df8ad908c92687d0c352e5ad5f067e52809423;p=lilypond.git diff --git a/lily/tuplet-engraver.cc b/lily/tuplet-engraver.cc index 4348044fbe..80067dd13f 100644 --- a/lily/tuplet-engraver.cc +++ b/lily/tuplet-engraver.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1998--2012 Han-Wen Nienhuys + Copyright (C) 1998--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -30,6 +30,8 @@ #include "translator.icc" +using std::vector; + struct Tuplet_description { Stream_event *event_; @@ -107,7 +109,7 @@ Tuplet_engraver::listen_tuplet_span (Stream_event *ev) tuplets_.pop_back (); } else if (!to_boolean (get_property ("skipTypesetting"))) - ev->origin ()->warning (_ ("No tuplet to end")); + ev->origin ()->debug_output (_ ("No tuplet to end")); } else ev->origin ()->programming_error ("direction tuplet-span-event_ invalid."); @@ -138,7 +140,7 @@ Tuplet_engraver::process_music () if (stopped_tuplets_[i].full_length_) { Item *col - = unsmob_item (stopped_tuplets_[i].full_length_note_ + = unsmob (stopped_tuplets_[i].full_length_note_ ? get_property ("currentMusicalColumn") : get_property ("currentCommandColumn")); @@ -155,7 +157,10 @@ Tuplet_engraver::process_music () stopped_tuplets_[i].bracket_->get_bound (LEFT)); } else - programming_error ("stopped tuplet bracket has neither left nor right bound"); + { + warning ("omitting tuplet bracket with neither left nor right bound"); + continue; + } } // todo: scrap last_tuplets_, use stopped_tuplets_ only. // clear stopped_tuplets_ at start_translation_timestep @@ -260,7 +265,7 @@ Tuplet_engraver::finalize () if (to_boolean (get_property ("tupletFullLength"))) for (vsize i = 0; i < last_tuplets_.size (); i++) { - Item *col = unsmob_item (get_property ("currentCommandColumn")); + Item *col = unsmob (get_property ("currentCommandColumn")); last_tuplets_[i]->set_bound (RIGHT, col); } }