bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issue 1475 in lilypond: crash with many markups between scores


From: lilypond
Subject: Re: Issue 1475 in lilypond: crash with many markups between scores
Date: Thu, 20 Jan 2011 18:06:31 +0000


Comment #15 on issue 1475 by address@hidden: crash with many markups between scores
http://code.google.com/p/lilypond/issues/detail?id=1475

Sorry, I've been traveling and haven't had much internet access lately. I have a patch and I'm running the regtests now. This patch also improves Carl's example in comment #5: now all the scores put 8 bars on one line except for score 10, which puts 4 bars on two lines each.

By the way, the excessive memory usage was in Page_breaking::line_divisions_rec. This function theoretically uses memory which is exponential in the number of systems, but it should never be an issue because of the way the function is used; the lower_bound and upper_bound arguments keep memory usage down to something linear in the number of systems. The problem was that I changed the way that systems were counted internally in the page breaker (before, system_count() counted systems, titles and markups, but I changed it to only count systems). But I didn't make the change in all of the places where it was required, so the system_count argument to line_divisions_rec got out of sync with the lower_bound and upper_bound arguments, causing exponential memory usage (but only when there are enough titles and markups to make things sufficiently out of sync).




reply via email to

[Prev in Thread] Current Thread [Next in Thread]