[Top][All Lists]
[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
- Fix 1464 (segfault with R1 and metronome) (issue3858041),
percival . music . ca <=