From 315eca7a50ab62370f8bef57497f5d3c98f2b34e Mon Sep 17 00:00:00 2001 From: Han-Wen Nienhuys Date: Fri, 9 Jul 2004 17:16:25 +0000 Subject: [PATCH] (process_acknowledged_grobs): backport. --- ChangeLog | 5 +++++ lily/axis-group-engraver.cc | 33 +++++++++++++++++++++++---------- 2 files changed, 28 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 02c7425baa..dfa06f68c3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-07-09 Han-Wen Nienhuys + + * lily/axis-group-engraver.cc (process_acknowledged_grobs): + backport. + 2004-07-05 Jan Nieuwenhuizen * ChangeLog: Remove pre-2.1 changes. diff --git a/lily/axis-group-engraver.cc b/lily/axis-group-engraver.cc index 8e404c150e..cca5ffb7a0 100644 --- a/lily/axis-group-engraver.cc +++ b/lily/axis-group-engraver.cc @@ -110,17 +110,30 @@ Axis_group_engraver::process_acknowledged_grobs () Grob *par = elts_[i]->get_parent (Y_AXIS); if (!par || !Axis_group_interface::has_interface (par)) - if (elts_[i]->is_empty (Y_AXIS)) - { - /* - We have to do _something_, otherwise staff objects will - end up with System as parent. + { + if (staffline_->get_parent (Y_AXIS) + && staffline_->get_parent (Y_AXIS) == elts_[i]) + { + String msg = _("Axis_group_engraver: vertical group already has a parent.\n" + "Do you have two Axis_group_engravers?\n" + "Killing this vertical group."); + staffline_->warning (msg); + staffline_->suicide (); + staffline_ = 0; + break ; + } + else if (elts_[i]->is_empty (Y_AXIS)) + { + /* + We have to do _something_, otherwise staff objects will + end up with System as parent. - */ - elts_[i]->set_parent (staffline_, Y_AXIS); - } - else - add_element (elts_[i]); + */ + elts_[i]->set_parent (staffline_, Y_AXIS); + } + else + add_element (elts_[i]); + } } elts_.clear (); } -- 2.39.5