Well, I've finally managed to figure out why lilypond started
coredumping on certain files, starting several versions ago. It was
running out of stack. When this happens, Iten::find_broken_piece ends
up being called with null pointers, which of course cause the
segfault. It was mysterious, since the stack frame would be reset and
I couldn't get a stack trace from gdb. Doubly mysterious, since the
files wouldn't cause a coredump on the lilypond developers
machines. The more I thought about it, the more it seemed like a
resource problem, but there was plenty of memory and swap. Well, I'm
not used to a unix with ulimit, I admit, so it took me a while to
figure out that the stack argument needed to increased.

Just FYI, should you have the same problem.

sdb

Reply via email to