From a8dc322fddd6378b8768c8c6c065726c34094c7c Mon Sep 17 00:00:00 2001 From: Carl Sorensen Date: Fri, 10 Sep 2010 18:32:29 -0600 Subject: [PATCH] Fix overrideTimeSignatureSettings multiple overrides work Eliminated an undesirable reverse of the list in revert-setting Add a regression test for this problem --- .../regression/multiple-time-sig-settings.ly | 31 +++++++++++++++++++ scm/time-signature-settings.scm | 3 +- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 input/regression/multiple-time-sig-settings.ly diff --git a/input/regression/multiple-time-sig-settings.ly b/input/regression/multiple-time-sig-settings.ly new file mode 100644 index 0000000000..3c6565ab79 --- /dev/null +++ b/input/regression/multiple-time-sig-settings.ly @@ -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 | +} diff --git a/scm/time-signature-settings.scm b/scm/time-signature-settings.scm index dbca769a1c..78599e2614 100644 --- a/scm/time-signature-settings.scm +++ b/scm/time-signature-settings.scm @@ -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 -- 2.39.5