lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fix 1464 (segfault with R1 and metronome) (issue3858041)


From: percival . music . ca
Subject: Fix 1464 (segfault with R1 and metronome) (issue3858041)
Date: Sun, 02 Jan 2011 00:50:13 +0000

Reviewers: ,

Message:
Fixes a segfault, passes the regtest comparison, code by Matthias
Kilian.

Description:
Fix 1464 (segfault with R1 and metronome)

This code came from Mathias Kilian.

Please review this at http://codereview.appspot.com/3858041/

Affected files:
  A input/regression/metronome-multimeasure-rest-no-segfault.ly
  M lily/metronome-engraver.cc


Index: input/regression/metronome-multimeasure-rest-no-segfault.ly
diff --git a/input/regression/metronome-multimeasure-rest-no-segfault.ly b/input/regression/metronome-multimeasure-rest-no-segfault.ly
new file mode 100644
index 0000000000000000000000000000000000000000..b3def2a59146f56bca113f878a55779dae790641
--- /dev/null
+++ b/input/regression/metronome-multimeasure-rest-no-segfault.ly
@@ -0,0 +1,28 @@
+\version "2.13.44"
+\header {
+  texidoc = "
+A metronome marking can be added to a multimeasure rest whose
+engraver was moved to the Staff, without segfaulting.
+"
+}
+
+
+\score {
+       \new Staff {
+               \tempo 4=150
+               R1 |
+       }
+       \layout {
+               \context {
+                       \Score
+                       \remove "Metronome_mark_engraver"
+                       \remove "Staff_collecting_engraver"
+               }
+               \context {
+                       \Staff
+                       \consists "Metronome_mark_engraver"
+                       \consists "Staff_collecting_engraver"
+               }
+       }
+}
+
Index: lily/metronome-engraver.cc
diff --git a/lily/metronome-engraver.cc b/lily/metronome-engraver.cc
index 0a41fc97abdb61fb1dde875722a7a565716b55a6..e34c0add2e7aefdd174323483967ddf777241990 100644
--- a/lily/metronome-engraver.cc
+++ b/lily/metronome-engraver.cc
@@ -95,7 +95,10 @@ Metronome_mark_engraver::acknowledge_break_aligned (Grob_info info)
           && safe_is_member (g->get_property ("break-align-symbol"),
                              text_->get_property ("break-align-symbols"))
           && Item::break_visible (g))
-    support_ = g;
+    {
+      support_ = g;
+      text_->set_parent (g, X_AXIS);
+    }
 }

 void





reply via email to

[Prev in Thread] Current Thread [Next in Thread]