]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix page breaks between scores.
authorJoe Neeman <joeneeman@gmail.com>
Mon, 19 Feb 2007 07:02:43 +0000 (18:02 +1100)
committerJoe Neeman <joeneeman@gmail.com>
Mon, 19 Feb 2007 07:02:43 +0000 (18:02 +1100)
lily/bar-engraver.cc
lily/paper-column-engraver.cc
lily/paper-score.cc

index 57457c37770fa061ca0bd34c7399c81fa8c3bc0b..263c7538bcd0557f49dfb798a05dfde4a94a1b0e 100644 (file)
@@ -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 ();
index 2df287aa371cf07a7d289c485981508d7c90e099..7e03efb79c816a9e262348de959d77c57c82363e 100644 (file)
@@ -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_);
     }
 }
index db0258328232ee30cec1a199bd7862c0e51f8f61..d668536341368190308a8ce41eee790ddeca03ab 100644 (file)
@@ -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<Grob*> 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 ();
 }