X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fpure-from-neighbor-interface.cc;h=745c23dbec0d982ab59e1d5d3aec275d0ae86bcd;hb=97a0169312a260933246ab224e4f8b0969871dd5;hp=fc3f238e3bd32d92d84a0e9a6f3a9f2c8a95ce6b;hpb=f4abbfff5f0d985a457e15586dbcc3ae473b0dee;p=lilypond.git diff --git a/lily/pure-from-neighbor-interface.cc b/lily/pure-from-neighbor-interface.cc index fc3f238e3b..745c23dbec 100644 --- a/lily/pure-from-neighbor-interface.cc +++ b/lily/pure-from-neighbor-interface.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 2011--2014 Mike Solomon + Copyright (C) 2011--2015 Mike Solomon LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -31,7 +31,7 @@ MAKE_SCHEME_CALLBACK (Pure_from_neighbor_interface, calc_pure_relevant_grobs, 1) SCM Pure_from_neighbor_interface::calc_pure_relevant_grobs (SCM smob) { - Grob *me = Grob::unsmob (smob); + Grob *me = unsmob (smob); extract_grob_set ((me->original () && me->original ()->is_live () ? me->original () : me), @@ -41,20 +41,15 @@ Pure_from_neighbor_interface::calc_pure_relevant_grobs (SCM smob) vector new_elts; new_elts.insert (new_elts.end (), elts.begin (), elts.end ()); - SCM neighbors_scm = me->get_object ("neighbors"); - if (Grob_array::unsmob (neighbors_scm)) - { - vector &arr - = Grob_array::unsmob (neighbors_scm)->array_reference (); - arr = new_elts; - } + if (Grob_array *a = unsmob (me->get_object ("neighbors"))) + a->set_array (new_elts); return Axis_group_interface::internal_calc_pure_relevant_grobs (me, "neighbors"); } ADD_INTERFACE (Pure_from_neighbor_interface, - "A collection of routines to allow for objects' pure" - "heights and heights to be calculated based on the" + "A collection of routines to allow for objects' pure " + "heights and heights to be calculated based on the " "heights of the objects' neighbors.", /* properties */