I’m consolidating some of the astrid setup into one
instrument_start function that sets up the LMDB session,
configures and starts the jack callback, and opens the message queue. I
think the internal message seq will be part of that base instrument
setup, and that async renders will be opt-in? Makes some more
boilerplate for basic C instruments, but I’ll probably be calling this
all from python at some point, too? So I could hide the boilerplate a
bit more at that stage, probably.
Anyway, apparently I introduced some crazy bug doing a little refactoring just now. It’s my first stack smashing error for pippi or astrid, I think lol. (Is that a milestone of some kind? Haha.)
After the program is done cleaning up, on exiting it barfs:
(~/code/pippi/astrid) % astrid-pulsar Sun 11 12:16PM lake
stacklength 8192
Waiting for messages...
Waiting for messages...
Waiting for messages...
Cleaning up...
Done!
*** stack smashing detected ***: terminated
zsh: IOT instruction (core dumped) astrid-pulsar
I just discovered today that coredumpctl will drop you into gdb no
questions asked with just coredumpctl debug. Nice! Saves
dumping the file and then running gdb manually. Small thing, but still
nice. Maybe I’ll stop leaving core dump files all over the place too
now. :-p