]> git.donarmstrong.com Git - lilypond.git/commitdiff
(My_lily_parser): don't delete lexer.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 26 May 2004 12:03:14 +0000 (12:03 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 26 May 2004 12:03:14 +0000 (12:03 +0000)
ChangeLog
lily/my-lily-parser.cc

index 7637f7a92f79a97775a66b87c420796c67168bb5..1abfdfc38a128091b646d2cfc0c2c3b4c760a2ad 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-05-26  Han-Wen Nienhuys   <hanwen@xs4all.nl>
+
+       * lily/my-lily-parser.cc (My_lily_parser): don't delete lexer.
+
 2004-05-25  Han-Wen Nienhuys   <hanwen@xs4all.nl>
 
        * lily/score.cc (default_rendering): scale outputdef before
index 4c7df0a4c594375c9932a3052943a69e780594da..018d4b0e8ab0d69ea2e9920c6c60c1697dbacd8a 100644 (file)
@@ -45,7 +45,7 @@ My_lily_parser::My_lily_parser (My_lily_parser const &src)
 {
   book_count_ = src.book_count_;
   score_count_ = src.score_count_;
-  lexer_ = src.lexer_;
+  lexer_ = 0;
   sources_ = src.sources_;
   default_duration_ = src.default_duration_;
   error_level_ = src.error_level_;
@@ -53,11 +53,12 @@ My_lily_parser::My_lily_parser (My_lily_parser const &src)
   header_ = src.header_;
 
   smobify_self ();
+  lexer_ = new My_lily_lexer (*src.lexer_);
 }
 
 My_lily_parser::~My_lily_parser ()
 {
-  delete lexer_;
+  // FIXME: Memleak: del lexer
 }
 
 IMPLEMENT_SMOBS (My_lily_parser);
@@ -108,6 +109,8 @@ My_lily_parser::parse_file (String init, String name, String out_name)
     }
 
   error_level_ = error_level_ | lexer_->error_level_;
+  delete lexer_;
+  lexer_ = 0;
 }
 
 void