From: David Kastrup Date: Mon, 14 Oct 2013 14:49:57 +0000 (+0200) Subject: Revert "Issue 3205: opening bar check causes crash if \score contains the \midi block" X-Git-Tag: release/2.17.29-1~12 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=658610548cc34ffbd4c9576c8989b9e209dfede9;p=lilypond.git Revert "Issue 3205: opening bar check causes crash if \score contains the \midi block" This reverts commit c83a3afbc51c62769cbb8963371d37b312bbcd42. The replacement of Simple_music_iterator with Music_iterator in lily/bar-check-iterator.cc made bar checks at the start of music expressions inoperative altogether, even when not at a bar boundary: { a a { | } a a } stopped producing a diagnostic. Issue 3205 instead needs to be fixed together with issue 2392 which apparently may be called "Segfault in Midi when Simple_music_iterator is used at the beginning of an implicitly created context". --- diff --git a/lily/bar-check-iterator.cc b/lily/bar-check-iterator.cc index ea4794897d..a0fb8eaee1 100644 --- a/lily/bar-check-iterator.cc +++ b/lily/bar-check-iterator.cc @@ -27,7 +27,7 @@ Check bar checks. We do this outside the engravers so that you can race through the score using skipTypesetting to correct durations. */ -class Bar_check_iterator : Music_iterator +class Bar_check_iterator : Simple_music_iterator { public: virtual void process (Moment); @@ -44,7 +44,7 @@ Bar_check_iterator::Bar_check_iterator () void Bar_check_iterator::process (Moment m) { - Music_iterator::process (m); + Simple_music_iterator::process (m); if (!m.to_bool ()) { Context *tr = get_outlet ();