]> git.donarmstrong.com Git - lilypond.git/commitdiff
fix Slur::calc_cross_staff
authorJoe Neeman <joeneeman@gmail.com>
Thu, 12 Jul 2007 08:48:19 +0000 (18:48 +1000)
committerJoe Neeman <joeneeman@gmail.com>
Thu, 12 Jul 2007 08:48:19 +0000 (18:48 +1000)
lily/slur.cc

index 8c2e36106f8a410e8bfd414c058ed477d7177283..ca22e9af97db82dbf940b89a1598b1ae1ebf2f7b 100644 (file)
@@ -361,14 +361,14 @@ SCM
 Slur::calc_cross_staff (SCM smob)
 {
   Grob *me = unsmob_grob (smob);
-  Grob *staff = Staff_symbol_referencer::get_staff_symbol (me);
-  assert (staff); // delete me
+
   extract_grob_set (me, "note-columns", cols);
+  extract_grob_set (me, "encompass-objects", extras);
+
+  Grob *common = common_refpoint_of_array (cols, me, Y_AXIS);
+  common = common_refpoint_of_array (extras, common, Y_AXIS);
 
-  for (vsize i = 0; i < cols.size (); i++)
-    if (Staff_symbol_referencer::get_staff_symbol (cols[i]) != staff)
-      return SCM_BOOL_T;
-  return SCM_BOOL_F;
+  return scm_from_bool (common != me->get_parent (Y_AXIS));
 }
 
 ADD_INTERFACE (Slur,