]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/beam-engraver.cc
release: 1.5.29
[lilypond.git] / lily / beam-engraver.cc
index e17a1e8e730c0677123e304463c50ac46148ceb6..9ebcd6ea262eaf3f672ab1edc7d77ca5142cdfd6 100644 (file)
@@ -3,7 +3,7 @@
   
   source file of the GNU LilyPond music typesetter
   
-  (c) 1998--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1998--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
 #include "engraver-group-engraver.hh"
@@ -135,17 +135,7 @@ Beam_engraver::process_music ()
 
   if (beam_p_)
     {
-      Score_engraver * e = 0;
-      Translator * t  =  daddy_grav_l ();
-      for (; !e && t;  t = t->daddy_trans_l_)
-       {
-         e = dynamic_cast<Score_engraver*> (t);
-       }
-      
-      if (!e)
-       programming_error ("No score engraver!");
-      else
-       e->forbid_breaks ();
+      top_engraver ()->forbid_breaks ();
     }
 }
 
@@ -253,12 +243,12 @@ Beam_engraver::acknowledge_grob (Grob_info info)
          if (Stem::beam_l (stem_l))
            return;
 
-         Rhythmic_req *rhythmic_req = dynamic_cast <Rhythmic_req *> (info.req_l_);
+         Rhythmic_req *rhythmic_req = dynamic_cast <Rhythmic_req *> (info.music_cause ());
          if (!rhythmic_req)
            {
              String s = _ ("stem must have Rhythmic structure");
-             if (info.req_l_)
-               info.req_l_->origin ()->warning (s);
+             if (info.music_cause ())
+               info.music_cause ()->origin ()->warning (s);
              else
                ::warning (s);