[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