X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fvertical-align-engraver.cc;h=570340f8d94dbc8254328b0e8cc6e84caad6cce1;hb=07edf9144366e72487514dab0407f034a4c961fc;hp=9a6e3afa30c8e58aff8e92e3168c23d504fa3755;hpb=210e2ac0a3b40a55d034a5ef86229501ed7d23e9;p=lilypond.git diff --git a/lily/vertical-align-engraver.cc b/lily/vertical-align-engraver.cc index 9a6e3afa30..570340f8d9 100644 --- a/lily/vertical-align-engraver.cc +++ b/lily/vertical-align-engraver.cc @@ -151,13 +151,18 @@ Vertical_align_engraver::acknowledge_axis_group (Grob_info i) if (arr[i] == before_grob) { arr.insert (arr.begin () + i, added); - added->set_property ("staff-affinity", scm_from_int (DOWN)); + + /* Only set staff affinity if it already has one. That way we won't + set staff-affinity on things that don't want it (like staves). */ + if (scm_is_number (added->get_property ("staff-affinity"))) + added->set_property ("staff-affinity", scm_from_int (DOWN)); break; } else if (arr[i] == after_grob) { arr.insert (arr.begin () + i + 1, added); - added->set_property ("staff-affinity", scm_from_int (UP)); + if (scm_is_number (added->get_property ("staff-affinity"))) + added->set_property ("staff-affinity", scm_from_int (UP)); break; } }