]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix overrideTimeSignatureSettings multiple overrides work
authorCarl Sorensen <c_sorensen@byu.edu>
Sat, 11 Sep 2010 00:32:29 +0000 (18:32 -0600)
committerCarl Sorensen <c_sorensen@byu.edu>
Sat, 11 Sep 2010 00:40:48 +0000 (18:40 -0600)
Eliminated an undesirable reverse of the list in revert-setting

Add a regression test for this problem

input/regression/multiple-time-sig-settings.ly [new file with mode: 0644]
scm/time-signature-settings.scm

diff --git a/input/regression/multiple-time-sig-settings.ly b/input/regression/multiple-time-sig-settings.ly
new file mode 100644 (file)
index 0000000..3c6565a
--- /dev/null
@@ -0,0 +1,31 @@
+\version "2.13.33"
+
+\header {
+  texidoc = "
+Multiple overrides to the default time signature settings can be
+added.  In this example, all notes should be beamed at 1/4.
+"
+}
+
+\relative c' {
+  \overrideTimeSignatureSettings
+      #'Score
+      #'(4 . 4)  % time signature fraction
+      #'(1 . 4)  % base moment fraction
+      #'(1 1 1 1)    % beatStructure
+      #'()       % beamExceptions
+  \overrideTimeSignatureSettings
+      #'Score
+      #'(3 . 4)  % time signature fraction
+      #'(1 . 4)  % base moment fraction
+      #'(1 1 1)    % beatStructure
+      #'()       % beamExceptions
+  \time 4/4
+  c8 c c c c c c c |
+  \time 3/4
+  c8 c c c c c |
+  \time 4/4
+  c8 c c c c c c c |
+  \time 3/4
+  c8 c c c c c |
+}
index dbca769a1c8e321fb9e9d7b0e39e23707b26b5b7..78599e2614000cb0fa82206995983777facf40fe 100644 (file)
@@ -260,7 +260,8 @@ a fresh copy of the list-head is made."
     (cond
       ((null? alist) new)
       ((equal? (car alist) entry) (revert-member (cdr alist) entry new))
-      (else (revert-member (cdr alist) entry (cons (car alist) new)))))
+      (else (cons (car alist)
+                  (revert-member (cdr alist) entry new)))))
 
   (ly:context-set-property!
     context property