Closed dvzrv closed 2 years ago
FWIW, the release can not be built without https://github.com/swesterfeld/liquidsfz/pull/35 and https://github.com/swesterfeld/liquidsfz/commit/82ce2bb1c18c4addfbda94643dcf7f7b836a13d7 using gcc >= 12. Building pull requests and this project in general against several (especially newer) gcc versions and testing the resulting binaries (e.g. with lv2lint in the case of the lv2 plugin) in CI would be much appreciated, as it leads to less friction upon upgrades for downstreams.
I was able to reproduce the crash if I build with -D_GLIBCXX_ASSERTIONS
enabled. Can you please re-test if it still crashes for you if you build from github master? The commit https://github.com/swesterfeld/liquidsfz/commit/01f0eb84f8efb3728f8627c9c37176902bba8e0a should fix it (at least with it I cannot reproduce the crash).
Thanks, that seems to fix it!
Ok great, I'll close the issue. I'll need to make a new liquidsfz release as soon as possible, since this bug is probably not only affecting Arch Linux. I also found another bug in 0.3.0 which can cause crashes, so basically once released everyone should be using 0.3.1.
As for CI - good idea. I have scripts that build on gcc:latest and archlinux now, both with gcc and clang and run lv2lint. Also there is a new program called testsynth, which contains a few tests that test the liquidsfz Synth class directly, so this can catch problems in the synthesis code that lv2lint can't see.
When trying to build 0.3.0 as a package for Arch Linux I was not able to succesfully run lv2lint on the resulting plugin.
I build as follows:
and then run lv2lint on the plugin in the build directory: