]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix #1338.
authorNeil Puttock <n.puttock@gmail.com>
Sat, 30 Oct 2010 17:58:47 +0000 (18:58 +0100)
committerNeil Puttock <n.puttock@gmail.com>
Sat, 30 Oct 2010 17:58:47 +0000 (18:58 +0100)
* lily/lily-lexer.cc (set_identifier):

  dereference the anonymous variable representing a nested property's previous
  setting

input/regression/paper-nested-override2.ly [new file with mode: 0644]
lily/lily-lexer.cc

diff --git a/input/regression/paper-nested-override2.ly b/input/regression/paper-nested-override2.ly
new file mode 100644 (file)
index 0000000..632c484
--- /dev/null
@@ -0,0 +1,17 @@
+\version "2.13.38"
+
+\header {
+  texidoc = "Setting individual nested paper properties does not
+remove existing settings or break spacing annotation."
+}
+
+\book {
+  \paper {
+    annotate-spacing = ##t
+    system-system-spacing = #'((space . 12) (minimum-distance . 8))
+    system-system-spacing #'padding = #1
+  }
+  \relative c' {
+    \repeat unfold 10 { a4 d e f }
+  }
+}
index 3b9a3882b19158170de3132cf7088f10b98e9a65..424259beea59b17d6e5e6d7e1d96664548cdf14d 100644 (file)
@@ -295,9 +295,9 @@ Lily_lexer::set_identifier (SCM path, SCM val)
 
       if (scm_is_pair (path))
        {
-         SCM prev = scm_module_lookup (mod, sym);
-         if (prev != SCM_UNDEFINED)
-           val = nested_property_alist (prev, path, val);
+         SCM prev = ly_module_lookup (mod, sym);
+         if (prev != SCM_BOOL_F)
+           val = nested_property_alist (scm_variable_ref (prev), path, val);
        }
       scm_module_define (mod, sym, val);
     }