X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fsimple-spacer.cc;h=bab2a05dcbd831b927ce25c76b725b806eec18e7;hb=794dcbdb52faf4292036cd1b0270a956cf4316a3;hp=9b0a322b1cb37e2e9e24560549d3990c2617b148;hpb=5b4b0d6e9a197e8f9eb085b7c2ad78b8be3e5cfc;p=lilypond.git diff --git a/lily/simple-spacer.cc b/lily/simple-spacer.cc index 9b0a322b1c..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--2008 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 (); }