]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/chord-name-engraver.cc
patch::: 1.3.121.jcn1
[lilypond.git] / lily / chord-name-engraver.cc
index a8143f1845fd267b6d04a2411a05bbcf7179db7a..a3541404a3c049e7a2cf2290b969fa83f6ac4344 100644 (file)
@@ -45,7 +45,7 @@ Chord_name_engraver::Chord_name_engraver ()
 {
   chord_name_p_ = 0;
   chord_ = gh_cons (SCM_EOL, gh_cons (SCM_EOL, SCM_EOL));
-  last_chord_ = gh_cons (SCM_EOL, gh_cons (SCM_EOL, SCM_EOL));
+  last_chord_ = SCM_EOL;
 }
 
 void
@@ -92,9 +92,19 @@ Chord_name_engraver::create_grobs ()
       chord_name_p_ = new Item (get_property ("ChordName"));
       chord_name_p_->set_grob_property ("chord", chord_);
       announce_grob (chord_name_p_, 0);
-      SCM s = get_property ("drarnChords"); //FIXME!
-      if (to_boolean (s) && last_chord_ != SCM_EOL &&
-         gh_equal_p (chord_, last_chord_))
+      SCM s = get_property ("chordChanges");
+#ifdef DEBUG
+      /*
+       gdb crashes upon printscm (chord_) etc...
+       ugh: why does gh_equal_p () not seem to work??
+       */
+      printf ("chord: %s\n",  ly_scm2string (ly_write2scm (chord_)).ch_C ());
+      printf ("last_chord: %s\n", ly_scm2string (ly_write2scm (last_chord_)).ch_C ());
+      int i = gh_equal_p (chord_, last_chord_);
+      printf ("i: %d\n", i);
+#endif
+      if (to_boolean (s) && last_chord_ != SCM_EOL
+         && gh_equal_p (chord_, last_chord_))
        chord_name_p_->set_grob_property ("begin-of-line-visible", SCM_BOOL_T);
     }
 }