]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/book.cc
* The grand 2005-2006 replace.
[lilypond.git] / lily / book.cc
index 0c3106e3fa2037ff9c8240eff1f4154331e34225..1d6edde999acb733da443ee9e67f136c04546765 100644 (file)
@@ -3,12 +3,13 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
 #include "book.hh"
 
 #include <cstdio>
+using namespace std;
 
 #include "lilypond-key.hh"
 #include "global-context.hh"
@@ -37,6 +38,12 @@ Book::Book ()
   smobify_self ();
 }
 
+Book* 
+Book::clone () const
+{
+  return new Book (*this);
+}
+
 Book::~Book ()
 {
 }
@@ -85,8 +92,10 @@ Book::process (Output_def *default_paper,
       if (score->error_found_)
        return 0;
 
-  Output_def *paper = paper_ ? default_paper : paper_;
-
+  Output_def *paper = paper_ ? paper_ : default_paper;
+  if (!paper)
+    return 0;
+  
   Paper_book *paper_book = new Paper_book ();
   Real scale = scm_to_double (paper->c_variable ("outputscale"));
   Output_def *scaled_bookdef = scale_output_def (paper, scale);
@@ -133,3 +142,4 @@ Book::process (Output_def *default_paper,
   scm_remember_upto_here_1 (scm_key);
   return paper_book;
 }
+