X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fsystem.cc;h=0551b85cbccda5286e770fdc238722edda48aec7;hb=97a0169312a260933246ab224e4f8b0969871dd5;hp=4a18ab52b7fd8c8b61d153d182fe79afad490208;hpb=24107d843c902a8101fbb696f47bf7538dd4493a;p=lilypond.git diff --git a/lily/system.cc b/lily/system.cc index 4a18ab52b7..0551b85cbc 100644 --- a/lily/system.cc +++ b/lily/system.cc @@ -106,16 +106,9 @@ System::typeset_grob (Grob *elem) void System::derived_mark () const { - if (!all_elements_->empty ()) - { - Grob **ptr = &all_elements_->array_reference ()[0]; - Grob **end = ptr + all_elements_->size (); - while (ptr < end) - { - scm_gc_mark ((*ptr)->self_scm ()); - ptr++; - } - } + const vector &arr = all_elements_->array (); + for (vsize i = arr.size (); i--;) + scm_gc_mark (arr[i]->self_scm ()); if (pscore_) scm_gc_mark (pscore_->self_scm ());