X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fsystem.cc;h=0551b85cbccda5286e770fdc238722edda48aec7;hb=5d84bfad4626892bcffd05adcced53c8a2329047;hp=4a18ab52b7fd8c8b61d153d182fe79afad490208;hpb=cee6cea4ed55eb4fa1f9d83c997ebc19744a6e1a;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 ());