]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/stem-engraver.cc
resolve merge
[lilypond.git] / lily / stem-engraver.cc
index 7db456006cbca4d67d63d0245afc0f16e89a8a3c..e21d796765ccd1cc1de4daf188b18be068e82d48 100644 (file)
@@ -1,9 +1,20 @@
 /*
-  stem-engraver.cc -- implement Stem_engraver
+  This file is part of LilyPond, the GNU music typesetter.
 
-  source file of the GNU LilyPond music typesetter
+  Copyright (C) 1997--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
-  (c) 1997--2009 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  LilyPond is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  LilyPond is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #include "engraver.hh"
@@ -58,14 +69,14 @@ Stem_engraver::make_stem (Grob_info gi)
   if (tremolo_ev_)
     {
       /* Stem tremolo is never applied to a note by default,
-        is must me requested.  But there is a default for the
+        it must be requested.  But there is a default for the
         tremolo value:
 
         c4:8 c c:
 
-        the first and last (quarter) note bothe get one tremolo flag.  */
+        the first and last (quarter) note both get one tremolo flag.  */
       int requested_type
-       = scm_to_int (tremolo_ev_->get_property ("tremolo-type"));
+       = robust_scm2int (tremolo_ev_->get_property ("tremolo-type"), 0);
       SCM f = get_property ("tremoloFlags");
       if (!requested_type)
        {
@@ -123,11 +134,13 @@ Stem_engraver::acknowledge_rhythmic_head (Grob_info gi)
   if (!stem_)
     make_stem (gi);
 
-  if (Stem::duration_log (stem_) != d->duration_log ())
+  int ds = Stem::duration_log (stem_);
+
+  if (ds != d->duration_log ())
     {
-      // FIXME: 
-      gi.event_cause ()->origin ()->warning (_f ("adding note head to incompatible stem (type = %d)",
-                                                1 << Stem::duration_log (stem_)));
+      gi.event_cause ()->origin ()->warning (_f ("adding note head to incompatible stem (type = %d/%d)",
+                                                ds < 0 ? 1 << -ds : 1,
+                                                ds > 0 ? 1 << ds : 1));
       gi.event_cause ()->origin ()->warning (_ ("maybe input should specify polyphonic voices"));
     }