]> git.donarmstrong.com Git - lilypond.git/commitdiff
Don't let interpret_stencil_expression call no-origin if grob-cause returned #f
authorDavid Kastrup <dak@gnu.org>
Sun, 4 Aug 2013 22:57:54 +0000 (00:57 +0200)
committerDavid Kastrup <dak@gnu.org>
Sun, 11 Aug 2013 08:23:13 +0000 (10:23 +0200)
lily/stencil-interpret.cc

index d3966c94afdb794dfb2ee7d0822baaa69a654444..ee5dce0b005e3e17c08149a42f19a29be3b62c0e 100644 (file)
@@ -55,10 +55,12 @@ interpret_stencil_expression (SCM expr,
         {
           SCM grob = scm_cadr (expr);
 
-          (*func) (func_arg, scm_list_3 (head,
-                                         ly_quote_scm (ly_offset2scm (o)), grob));
+          SCM link =
+            (*func) (func_arg,
+                     scm_list_3 (head, ly_quote_scm (ly_offset2scm (o)), grob));
           interpret_stencil_expression (scm_caddr (expr), func, func_arg, o);
-          (*func) (func_arg, scm_list_1 (ly_symbol2scm ("no-origin")));
+          if (scm_is_true (link))
+            (*func) (func_arg, scm_list_1 (ly_symbol2scm ("no-origin")));
           return;
         }
       else if (head == ly_symbol2scm ("color"))