]> git.donarmstrong.com Git - lilypond.git/commitdiff
(simultaneous_relative_callback): do
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Sat, 5 Feb 2005 16:51:24 +0000 (16:51 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Sat, 5 Feb 2005 16:51:24 +0000 (16:51 +0000)
what-if analysis on copy, not on original. Fixes old-relative
compatibility.

ChangeLog
lily/music-sequence.cc

index 17f736cc45e33346ce697024c8e606cf2e498556..221d3b7fd7e725bbcae4566c7f6ba226ca801eb3 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
 
+       * lily/music-sequence.cc (simultaneous_relative_callback): do
+       what-if analysis on copy, not on original. Fixes old-relative
+       compatibility.
+
        * scm/backend-library.scm (postscript->png): space before
        --verbose.
        
index f81a2069ad7e220a9a3a39ba8922f505f309f6eb..7ce0568bb142d3a496eb881c0a7fc53837c050e2 100644 (file)
@@ -152,12 +152,17 @@ Music_sequence::simultaneous_relative_callback (SCM music, SCM pitch)
   Music *me = unsmob_music (music);
   Pitch p = *unsmob_pitch (pitch);
 
-  SCM elts = me->get_property ("elements"); 
+  SCM elts = me->get_property ("elements");
+  SCM copied = SCM_EOL;
+  if (lily_1_8_relative)
+    copied = ly_music_deep_copy (elts);
 
   Pitch retval = music_list_to_relative (elts, p, false);
+  
   if (lily_1_8_relative)
     {
-      Pitch retval_1_8 = music_list_to_relative (elts, p, true);
+      
+      Pitch retval_1_8 = music_list_to_relative (copied, p, true);
       if (retval_1_8 != retval)
        lily_1_8_compatibility_used = true;