X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fbook.cc;h=2a1038941b8e630904c2f4abce75174991f966c4;hb=1efdfdaed5cd51abfe5da5e4f5731fe9396c96f2;hp=06b3ea217febeb634fb49b8bb6fb14b79cd0e492;hpb=9c62c7293a657743e212d8ab279b5d100a9c75a3;p=lilypond.git diff --git a/lily/book.cc b/lily/book.cc index 06b3ea217f..2a1038941b 100644 --- a/lily/book.cc +++ b/lily/book.cc @@ -11,7 +11,6 @@ #include using namespace std; -#include "lilypond-key.hh" #include "main.hh" #include "music.hh" #include "output-def.hh" @@ -21,6 +20,7 @@ using namespace std; #include "warn.hh" #include "performance.hh" #include "paper-score.hh" +#include "page-marker.hh" #include "ly-smobs.icc" @@ -61,7 +61,7 @@ Book::Book (Book const &s) Score *newscore = unsmob_score (scm_car (p))->clone (); *t = scm_cons (newscore->self_scm (), SCM_EOL); - t = SCM_CDRLOC(*t); + t = SCM_CDRLOC (*t); newscore->unprotect (); } } @@ -84,11 +84,6 @@ Book::mark_smob (SCM s) { Book *book = (Book *) SCM_CELL_WORD_1 (s); -#if 0 - if (book->key_) - scm_gc_mark (book->key_->self_scm ()); -#endif - if (book->paper_) scm_gc_mark (book->paper_->self_scm ()); scm_gc_mark (book->scores_); @@ -130,9 +125,6 @@ Book::process (Output_def *default_paper, Real scale = scm_to_double (paper->c_variable ("output-scale")); Output_def *scaled_bookdef = scale_output_def (paper, scale); - Object_key *key = new Lilypond_general_key (0, user_key_, 0); - SCM scm_key = key->unprotect (); - paper_book->paper_ = scaled_bookdef; scaled_bookdef->unprotect (); @@ -162,13 +154,13 @@ Book::process (Output_def *default_paper, outputs = scm_cdr (outputs); } } - else if (Text_interface::is_markup (scm_car (s))) + else if (Text_interface::is_markup_list (scm_car (s)) + || unsmob_page_marker (scm_car (s))) paper_book->add_score (scm_car (s)); else assert (0); } - scm_remember_upto_here_1 (scm_key); return paper_book; }