From 2cfc23d08525db8a13e25e7988413d6f734c4068 Mon Sep 17 00:00:00 2001 From: Joe Neeman Date: Mon, 19 Feb 2007 18:02:43 +1100 Subject: [PATCH] Fix page breaks between scores. --- lily/bar-engraver.cc | 2 +- lily/paper-column-engraver.cc | 4 ++-- lily/paper-score.cc | 8 -------- 3 files changed, 3 insertions(+), 11 deletions(-) diff --git a/lily/bar-engraver.cc b/lily/bar-engraver.cc index 57457c3777..263c7538bc 100644 --- a/lily/bar-engraver.cc +++ b/lily/bar-engraver.cc @@ -89,7 +89,7 @@ Bar_engraver::typeset_bar () void Bar_engraver::stop_translation_timestep () { - if (!bar_) + if (!bar_ && now_mom () != Moment (Rational (0), Rational (0))) context ()->get_score_context ()->set_property ("forbidBreak", SCM_BOOL_T); else typeset_bar (); diff --git a/lily/paper-column-engraver.cc b/lily/paper-column-engraver.cc index 2df287aa37..7e03efb79c 100644 --- a/lily/paper-column-engraver.cc +++ b/lily/paper-column-engraver.cc @@ -38,8 +38,8 @@ Paper_column_engraver::finalize () if (command_column_) { - command_column_->set_property ("line-break-permission", ly_symbol2scm ("allow")); - command_column_->set_property ("page-turn-permission", ly_symbol2scm ("allow")); + if (!scm_is_symbol (command_column_->get_property ("line-break-permission"))) + command_column_->set_property ("line-break-permission", ly_symbol2scm ("allow")); system_->set_bound (RIGHT, command_column_); } } diff --git a/lily/paper-score.cc b/lily/paper-score.cc index db02583282..d668536341 100644 --- a/lily/paper-score.cc +++ b/lily/paper-score.cc @@ -121,14 +121,6 @@ Paper_score::process () message (_ ("Preprocessing graphical objects...")); - /* FIXME: Check out why we need this - removing gives assertion failures - down the road. - - doubly, also done in Score_engraver */ - vector pc (system_->used_columns ()); - pc[0]->set_property ("line-break-permission", ly_symbol2scm ("allow")); - pc.back ()->set_property ("line-break-permission", ly_symbol2scm ("allow")); - system_->pre_processing (); } -- 2.39.2