]> git.donarmstrong.com Git - lilypond.git/commitdiff
Get 'line-positions and line_count from staff symbol grob in Staff_symbol::on_line ().
authorNeil Puttock <n.puttock@gmail.com>
Tue, 8 Jul 2008 22:38:07 +0000 (23:38 +0100)
committerNeil Puttock <n.puttock@gmail.com>
Wed, 9 Jul 2008 00:13:14 +0000 (01:13 +0100)
This prevents dots and spanners from being positioned incorrectly.

lily/staff-symbol.cc

index 6fefc48010750e7daa9b2f9ed0078305047eff4b..6e376434ca3a3b7412520c6591c588a344711e46 100644 (file)
@@ -170,7 +170,8 @@ Staff_symbol::height  (SCM smob)
 bool
 Staff_symbol::on_line (Grob *me, int pos)
 {
-  SCM line_positions = me->get_property ("line-positions");
+  Grob *st = Staff_symbol_referencer::get_staff_symbol (me);
+  SCM line_positions = st->get_property ("line-positions");
   if (scm_is_pair (line_positions))
     {
       Real min_line = HUGE_VAL;
@@ -194,7 +195,7 @@ Staff_symbol::on_line (Grob *me, int pos)
       return false;
     }
   else
-    return ((abs (pos + line_count (me)) % 2) == 1);
+    return ((abs (pos + line_count (st)) % 2) == 1);
 }
 
 ADD_INTERFACE (Staff_symbol,