]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/key-engraver.cc
Merge remote-tracking branch 'origin/translation' into staging
[lilypond.git] / lily / key-engraver.cc
index 4dec628213d720ca93981e3854ef7badbe9338dc..6e758f5728fcd415c0c5e5fa857bbb715c207d70 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 1997--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 1997--2014 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
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "bar-line.hh"
 #include "clef.hh"
 #include "context.hh"
 #include "engraver.hh"
+#include "international.hh"
 #include "item.hh"
 #include "pitch.hh"
 #include "protected-scm.hh"
@@ -86,7 +86,6 @@ Key_engraver::create_key (bool is_default)
           && !scm_is_eq (last, key))
         {
           SCM restore = SCM_EOL;
-          SCM *tail = &restore;
           for (SCM s = last; scm_is_pair (s); s = scm_cdr (s))
             {
               SCM new_alter_pair = scm_assoc (scm_caar (s), key);
@@ -95,8 +94,7 @@ Key_engraver::create_key (bool is_default)
                   || ((ly_scm2rational (scm_cdr (new_alter_pair)) - old_alter) * old_alter
                       < Rational (0)))
                 {
-                  *tail = scm_cons (scm_car (s), *tail);
-                  tail = SCM_CDRLOC (*tail);
+                  restore = scm_cons (scm_car (s), restore);
                 }
             }
 
@@ -106,7 +104,7 @@ Key_engraver::create_key (bool is_default)
                                          key_event_
                                          ? key_event_->self_scm () : SCM_EOL);
 
-              cancellation_->set_property ("alteration-alist", scm_reverse (restore));
+              cancellation_->set_property ("alteration-alist", restore);
               cancellation_->set_property ("c0-position",
                                            get_property ("middleCPosition"));
             }
@@ -197,10 +195,10 @@ Key_engraver::read_event (Stream_event const *r)
           }
 
       if (warn)
-        r->origin ()->warning ("Incomplete keyAlterationOrder for key signature");
+        r->origin ()->warning (_ ("Incomplete keyAlterationOrder for key signature"));
     }
 
-  context ()->set_property ("keySignature", scm_reverse (accs));
+  context ()->set_property ("keySignature", scm_reverse_x (accs, SCM_EOL));
   context ()->set_property ("tonic",
                             r->get_property ("tonic"));
 }