]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/engraver-group.cc
(framework_relocation): use INSTALLER_PREFIX.
[lilypond.git] / lily / engraver-group.cc
index ff0271515c4396c0cd420f48c1c3031b5f8a9334..5742288d69cc46b8d3407da3fb991ec7e4efb384 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
 #include "engraver-group.hh"
@@ -17,7 +17,7 @@
 void
 Engraver_group::announce_grob (Grob_info info)
 {
-  announce_infos_.push (info);
+  announce_infos_.push_back (info);
 
   Engraver_group *dad_eng
     = context_->get_parent_context ()
@@ -36,7 +36,7 @@ Engraver_group::acknowledge_grobs ()
   SCM name_sym = ly_symbol2scm ("name");
   SCM meta_sym = ly_symbol2scm ("meta");
 
-  for (int j = 0; j < announce_infos_.size (); j++)
+  for (vsize j = 0; j < announce_infos_.size (); j++)
     {
       Grob_info info = announce_infos_[j];
 
@@ -93,19 +93,23 @@ Engraver_group::pending_grob_count () const
 void
 Engraver_group::do_announces ()
 {
-  for (SCM s = context ()->children_contexts ();
-       scm_is_pair (s); s = scm_cdr (s))
+  do
     {
-      Context *c = unsmob_context (scm_car (s));
-      Engraver_group *group
-       = dynamic_cast<Engraver_group *> (c->implementation ());
-      if (group)
-       group->do_announces ();
-    }
+      /*
+       DOCME: why is this inside the loop? 
+       */
+      for (SCM s = context ()->children_contexts ();
+          scm_is_pair (s); s = scm_cdr (s))
+       {
+         Context *c = unsmob_context (scm_car (s));
+         Engraver_group *group
+           = dynamic_cast<Engraver_group *> (c->implementation ());
+         if (group)
+           group->do_announces ();
+       }
 
- do
-    {
-       while (1)
+      
+      while (1)
        {
          precomputed_translator_foreach (PROCESS_ACKNOWLEDGED);
          if (announce_infos_.size () == 0)