+ for (vsize k = 0; k < note_heads_.size (); k++)
+ {
+ bool spanner_start = false;
+ for (vsize j = 0; j < slurs_.size (); j++)
+ {
+ Item *left_item = slurs_[j]->get_bound (LEFT);
+ if (left_item)
+ {
+ SCM left_cause = left_item->get_property ("cause");
+ Item *slur_cause = unsmob<Item> (left_cause);
+ if (slur_cause == note_heads_[k])
+ {
+ note_heads_[k]->set_property ("span-start", SCM_BOOL_T);
+ spanner_start = true;
+ break;
+ }
+ }
+ }
+ if (!spanner_start)
+ for (vsize j = 0; j < glissandi_.size (); j++)
+ {
+ Item *left_bound = glissandi_[j]->get_bound (LEFT);
+ if (left_bound == note_heads_[k])
+ {
+ note_heads_[k]->set_property ("span-start", SCM_BOOL_T);
+ break;
+ }
+ }
+ }
+ slurs_.clear ();
+ glissandi_.clear ();
+ note_heads_.clear ();