X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=lily%2Fsimple-spacer.cc;h=bab2a05dcbd831b927ce25c76b725b806eec18e7;hb=71e28be454525b174df8cbf9981dacd93a530a30;hp=4da2ac9a87d3439893e93f57dc951b82dc4d6458;hpb=993e0400c2ea45306fe9eb245e693b5ded258f0d;p=lilypond.git diff --git a/lily/simple-spacer.cc b/lily/simple-spacer.cc index 4da2ac9a87..bab2a05dcb 100644 --- a/lily/simple-spacer.cc +++ b/lily/simple-spacer.cc @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 1999--2007 Han-Wen Nienhuys + (c) 1999--2009 Han-Wen Nienhuys TODO: - add support for different stretch/shrink constants? @@ -216,7 +216,9 @@ Simple_spacer::compress_line () { Spring sp = sorted_springs[i]; - assert (sp.blocking_force () <= cur_force); + if (sp.blocking_force () > cur_force) + continue; + if (isinf (sp.blocking_force ())) break; @@ -234,7 +236,7 @@ Simple_spacer::compress_line () } cur_len -= block_dist; - inv_hooke -= sp.inverse_compress_strength (); + inv_hooke -= compressed ? sp.inverse_compress_strength () : sp.inverse_stretch_strength (); cur_force = sp.blocking_force (); }