Reported by Jean Menezes da Rocha:
If, with override Stem.french-beaming = ##t, a beam ends over a rest, Lily will exit with a segfault.
:::TeX
\version "2.19.30"
\relative c'' {
\override Stem #'french-beaming = ##t
c16[ d e r]
}
I reproduced this with vv. 2.16.2, 2.18.2, and 2.19.28.
Here is a GDB backtrace, which Jean kindly provided:
The issue has been confirmed for Linux only, in case that be important.
This is due to the lackadaisical way in which
commit dafef223123bb629eab05e53c443c6e6d20e9481
Author: Han-Wen Nienhuys hanwen@xs4all.nl
Date: Mon May 22 14:06:28 2006 +0000
has been done. Most of the code is not prepared to "use #f as signaling value for beamcount 0". It's surprising that stuff does not break entirely much more often. I'm rather doubtful that this "design" can sensibly be made to behave consistently while retaining (or rather getting) maintainable code.
Issue 4653: French beam ending on rest causes segfault
The issue here is that Stem::set-beaming may set one of the beaming
segment lists to #f instead of an empty list, and not all users of
"beaming" (in this case where_are_the_whole_beams) were prepared to
deal with this.
Also contains commit:
Implement ly_memv as a sloppy memv variant
http://codereview.appspot.com/274280043
Passes make, make check and a full make doc
Patch on countdown for November 10th
Patch counted down - please push
Pushed to staging as
commit 272e82d1174fdf303fcbbadc7648f75ac881ad3a
Author: David Kastrup dak@gnu.org
Date: Tue Nov 3 13:36:54 2015 +0100
commit 6a7c432f7a33081e18cd4a911c459cc8c805e35d
Author: David Kastrup dak@gnu.org
Date: Tue Nov 3 18:22:20 2015 +0100