From: fred Date: Tue, 26 Mar 2002 22:48:00 +0000 (+0000) Subject: lilypond-1.3.74 X-Git-Tag: release/1.5.59~1769 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=8eaad2f9f75d86b2f43a86e03f315208ed3fae71;p=lilypond.git lilypond-1.3.74 --- diff --git a/lily/auto-change-iterator.cc b/lily/auto-change-iterator.cc index ef0edb3cbd..2c9de1f717 100644 --- a/lily/auto-change-iterator.cc +++ b/lily/auto-change-iterator.cc @@ -65,18 +65,20 @@ Auto_change_iterator::change_to (Music_iterator *it, String to_type, ; // error (_ ("none of these in my family")); } - +Pitch_interrogate_req* spanish_inquisition; // nobody expects it void Auto_change_iterator::do_process_and_next (Moment m) { Music_wrapper_iterator::do_process_and_next (m); - Pitch_interrogate_req spanish_inquisition; // nobody expects it - Music_iterator *it = try_music (&spanish_inquisition); + if (!spanish_inquisition) + spanish_inquisition = new Pitch_interrogate_req; + + Music_iterator *it = try_music (spanish_inquisition); - if (it && spanish_inquisition.pitch_arr_.size ()) + if (it && spanish_inquisition->pitch_arr_.size ()) { - Musical_pitch p = spanish_inquisition.pitch_arr_[0]; + Musical_pitch p = spanish_inquisition->pitch_arr_[0]; Direction s = Direction (sign(p.steps ())); if (s != where_dir_) { @@ -87,6 +89,8 @@ Auto_change_iterator::do_process_and_next (Moment m) change_to (it, auto_mus->what_str_, to_id); } } + + spanish_inquisition->pitch_arr_.clear (); } Auto_change_iterator::Auto_change_iterator( )