From: David Kastrup Date: Tue, 2 Sep 2014 17:14:34 +0000 (+0200) Subject: Issue 3849: \parenthesize\p generates programming error X-Git-Tag: release/2.19.14-1~20 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=3bcfbed107c26650fb7bc9cc957b5424f9187866;p=lilypond.git Issue 3849: \parenthesize\p generates programming error Register a grob as the cause for DynamicLineSpanner rather than an event. --- diff --git a/lily/dynamic-align-engraver.cc b/lily/dynamic-align-engraver.cc index 467b1fda78..130d1d9f41 100644 --- a/lily/dynamic-align-engraver.cc +++ b/lily/dynamic-align-engraver.cc @@ -44,7 +44,7 @@ protected: virtual void stop_translation_timestep (); private: - void create_line_spanner (Stream_event *cause); + void create_line_spanner (Grob *cause); void set_spanner_bounds (Spanner *line, bool end); Spanner *line_; Spanner *ended_line_; // Spanner manually broken, don't use it for new grobs @@ -71,11 +71,10 @@ ADD_ACKNOWLEDGER (Dynamic_align_engraver, footnote_spanner); ADD_END_ACKNOWLEDGER (Dynamic_align_engraver, dynamic); void -Dynamic_align_engraver::create_line_spanner (Stream_event *event) +Dynamic_align_engraver::create_line_spanner (Grob *cause) { if (!line_) - line_ = make_spanner ("DynamicLineSpanner", - event ? event->self_scm () : SCM_EOL); + line_ = make_spanner ("DynamicLineSpanner", cause->self_scm ()); } void @@ -141,7 +140,7 @@ Dynamic_align_engraver::acknowledge_dynamic (Grob_info info) } } - create_line_spanner (cause); + create_line_spanner (info.grob ()); if (Spanner::has_interface (info.grob ())) { started_.push_back (info.spanner ());