From 09477a6064ff31ca2ea4f3a01c76d6406558260d Mon Sep 17 00:00:00 2001 From: David Kastrup Date: Tue, 17 Apr 2012 11:03:43 +0200 Subject: [PATCH] Part_combine_iterator::derived_mark: don't abort marking prematurely. --- lily/part-combine-iterator.cc | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/lily/part-combine-iterator.cc b/lily/part-combine-iterator.cc index eb1cca43e5..db6b77cbc6 100644 --- a/lily/part-combine-iterator.cc +++ b/lily/part-combine-iterator.cc @@ -158,19 +158,14 @@ Part_combine_iterator::derived_mark () const scm_gc_mark (first_iter_->self_scm ()); if (second_iter_) scm_gc_mark (second_iter_->self_scm ()); - - Stream_event *ptrs[] - = - { - unisono_event_, - mmrest_event_, - solo_two_event_, - solo_one_event_, - 0 - }; - for (int i = 0; ptrs[i]; i++) - if (ptrs[i]) - scm_gc_mark (ptrs[i]->self_scm ()); + if (unisono_event_) + scm_gc_mark (unisono_event_->self_scm ()); + if (mmrest_event_) + scm_gc_mark (mmrest_event_->self_scm ()); + if (solo_one_event_) + scm_gc_mark (solo_one_event_->self_scm ()); + if (solo_two_event_) + scm_gc_mark (solo_two_event_->self_scm ()); } void -- 2.39.2