From: fred Date: Tue, 26 Mar 2002 23:25:15 +0000 (+0000) Subject: lilypond-1.3.74 X-Git-Tag: release/1.5.59~1452 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=4dc7334bced2054961790a0714f7844262e1e8fb;p=lilypond.git lilypond-1.3.74 --- diff --git a/lily/music.cc b/lily/music.cc index 536082211e..8ce821e012 100644 --- a/lily/music.cc +++ b/lily/music.cc @@ -18,11 +18,13 @@ ly_deep_mus_copy (SCM m) { if (unsmob_music (m)) { - return unsmob_music (m)->clone ()->self_scm_; + SCM ss = unsmob_music (m)->clone ()->self_scm (); + scm_unprotect_object (ss); + return ss; } else if (gh_pair_p (m)) { - return gh_cons (ly_deep_copy (gh_car (m)), ly_deep_copy (gh_cdr (m))); + return gh_cons (ly_deep_mus_copy (gh_car (m)), ly_deep_mus_copy (gh_cdr (m))); } else return m; @@ -31,7 +33,6 @@ ly_deep_mus_copy (SCM m) Music::Music (Music const &m) { - self_scm_ = SCM_EOL; immutable_property_alist_ = m.immutable_property_alist_; SCM c =ly_deep_mus_copy (m.mutable_property_alist_); mutable_property_alist_ = c; @@ -44,7 +45,6 @@ Music::Music (Music const &m) Music::Music() { - self_scm_ = SCM_EOL; immutable_property_alist_ = SCM_EOL; mutable_property_alist_ = SCM_EOL; smobify_self (); @@ -53,10 +53,10 @@ Music::Music() SCM Music::mark_smob (SCM m) { - Music * mus = SMOB_TO_TYPE (Music, m); + Music * mus = (Music *)SCM_CELL_WORD_1(m); scm_gc_mark (mus->immutable_property_alist_); scm_gc_mark (mus->mutable_property_alist_); - return mus->do_derived_mark (); + return SCM_EOL; } void @@ -99,6 +99,7 @@ Music::transpose (Musical_pitch ) IMPLEMENT_UNSMOB(Music,music); IMPLEMENT_SMOBS(Music); +IMPLEMENT_DEFAULT_EQUAL_P(Music); /****************************/ @@ -175,21 +176,13 @@ Music::origin () const return ip ? ip : & dummy_input_global; } -SCM -Music::do_derived_mark () -{ - return SCM_EOL; -} void Music::print ()const { } -void -Music::do_smobify_self () -{ -} + Music::~Music () {