lilypond-auto
[Top][All Lists]
Advanced

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

Re: [Lilypond-auto] Issue 3641 in lilypond: Example for \accepts in N.R.


From: lilypond
Subject: Re: [Lilypond-auto] Issue 3641 in lilypond: Example for \accepts in N.R.5.1.7 broke
Date: Fri, 01 Nov 2013 08:49:20 +0000


Comment #5 on issue 3641 by address@hidden: Example for \accepts in N.R.5.1.7 broke
http://code.google.com/p/lilypond/issues/detail?id=3641

Depends on what you call "the original issue 2990". Issue 3101 addressed one particular cause where it was easy to arrive at a crashing "Axis_group_engraver" constellation. It is still easy to arrive at crashing engraver combinations in other means, like when juggling around in order to put both a DrumStaff and a normal Staff in the same space (axis group), or trying to create the equivalent of Dynamics contexts and so on.

The crash is a particularly unfriendly one (running out of memory, which depending on platform, total memory, swapspace and ulimits can make your whole system grind to a crawl or even halt). The use of an internal context property is simple and reliable for catching bad engraver constellations. It's not particularly elegant (the previous patch tried to be elegant without using additional data, and it was pretty much a failure), but it does the job and reasonably cheaply so.

It might make sense to also use this automatic scheme for the setting of topLevelAlignment (instead of setting it in engraver-init.ly). However, I have not looked into the operations of vertical-align-engraver.cc closely so I am not sure I have a full grasp of effects and side-effects. It looks like you could cause crashes with several topLevelAlignment = ##t in a single hierarchy, but I have not figured out whether topLevelAlignment = ##t has to be at the top of all vertical align engravers always.

The proposed change to vertical-align-engraver.cc also helps against
\new StaffGroup \with { \consists "Axis_group_engraver" } c
which does not lead to particularly helpful results in 2.16 either (segfault after an indefinite stream of warnings).

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings



reply via email to

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