]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.70pre
authorfred <fred>
Sun, 24 Mar 2002 19:45:40 +0000 (19:45 +0000)
committerfred <fred>
Sun, 24 Mar 2002 19:45:40 +0000 (19:45 +0000)
flower/.version
flower/NEWS
flower/include/list.hh
flower/include/plist.hh
lily/p-col.cc
lily/p-score.cc

index e275cb9db01289e92108214ffd7953f7611f9dea..7a6f85cea4e147504fd763e5d943f15b8e9edf08 100644 (file)
@@ -1,6 +1,6 @@
 MAJOR_VERSION = 1
 MINOR_VERSION = 1
-PATCH_LEVEL = 19
+PATCH_LEVEL = 20
 # use to send patches, always empty for released version:
 MY_PATCH_LEVEL = # include separator: "-1" or ".a"
 #
index 050b1356d8ca0e8ca9be8b62ffa7969be41054fb..a642a93eba4b922ca47bf9bb19e5019ab5f9ee5c 100644 (file)
@@ -1,4 +1,6 @@
 version 1.1:
+pl 20
+       - List::junk_links()
 pl 19
        - Array::reverse()
 
index 343ccffcbc9f822cce1200cca21c6fe3b2604ab5..fcc5e70712598d114968135b55f2f87299b4cd5c 100644 (file)
@@ -42,6 +42,7 @@ class List
     Cursor<T> top() const;
 
     void OK() const;           // check list
+    void junk_links();
     
  protected:
     friend class Cursor<T>;
index 4c9d71dba539ad389db65475fdfc968fec46bb56..af27832f00cbd4d0e51f2b30bf7b2f9c5dec42e4 100644 (file)
@@ -30,6 +30,7 @@ class Link_list : public List<void *>
     }
     PCursor<T> find(T) const;
     void concatenate(Link_list<T> const &s) { List<void*>::concatenate(s); }
+
     Link_list() {}
 };
 
index f55ea2452b9520086d29141598b58acaaee6ea05..eb7a78ef10412f34cafa9e3c8a8029124cf7b494 100644 (file)
@@ -27,10 +27,7 @@ void
 PCol::clean_breakable_items()
 {
     if (!line_l_) {
-       for(iter(its.top(), j); j.ok(); ) {
-           j->unlink();
-           j.del();
-       }
+       its.junk_links();
     }
     if (prebreak_p_) prebreak_p_->clean_breakable_items();
     if (postbreak_p_) postbreak_p_->clean_breakable_items();
index 44acc399bd4cedd018075546ca63fa65edd227ab..de266d1b20979def2121be2a398aa00eb31bc70b 100644 (file)
@@ -216,6 +216,14 @@ PScore::set_breaking(Array<Col_hpositions> const &breaking)
            typeset_broken_spanner(span_p);
        }
     }
+    for (iter(elem_p_list_.top(),i ); i.ok() ;) {
+       Item *i_l =i->item();
+       if ( i_l && !i_l->pcol_l_->line_l_) {
+           i_l->unlink();
+           delete i.remove_p();
+       } else
+           i++;
+    }
 
     for (iter_top(cols, i); i.ok(); i++)
        i->clean_breakable_items();