drumlabooh icon indicating copy to clipboard operation
drumlabooh copied to clipboard

v.5.0.0 segfault in Ardour/Mixbus Debian 12

Open RattusSolarus opened this issue 1 year ago • 6 comments

I built drumlabooh 5.0.0 from source on Debian 12 Bookworm. Build and install went smoothly and both LV2 and VST3 versions work fine, until I scroll through to the bottom of the drumkit list where it always segfaults both in Ardour and Mixbus. Running Ardour/Mixbus from CLI only shows a message that it segfaulted, no other clues. I rebuilt v.4.0.0 which I have used previously and replaced v.5.0.0, no issue in v.4.0.0. I'm not a coder, just a moderately experienced user, so not sure I can debug this alone, but happy to do any tests with guidance.

RattusSolarus avatar Sep 18 '24 03:09 RattusSolarus

Thank you for the bug report. Can you try the current source? https://github.com/psemiletov/drumlabooh/archive/refs/heads/main.zip It is the next release's code, with the heavy rewritten kit scanner, so maybe it is fixed there. I was not able to reproduce the segfault, but here with the new code we have a chance for the better experience.

psemiletov avatar Sep 18 '24 12:09 psemiletov

Same issue with current source. It only happens when I scroll to the bottom of the kits list. I noticed at first in cmake there are several modules not found but installing libwebkit2gtk-4.0-dev fixed that message. Do you test only on Ubuntu and Arch? Maybe it's just something in Debian. I tried unsuccessfully in Debian Testing as well but libcurl is currently a t64 transitional package so make didn't find that either.

RattusSolarus avatar Sep 18 '24 15:09 RattusSolarus

I've tested at Arch, Ubuntu and Windows 7. Maybe the problem is in the parsing of the drumkit name. What drumkit at yoiur list is the last? The crash happens just on scrolling or when the kit is selected?

psemiletov avatar Sep 18 '24 17:09 psemiletov

I've tested also on Debian 12, at VirtualBox - and can't reproduce the segfault :( Possible it is an error somewhere at JUCE's listbox implementation, I'll try to search about it at JUCE github and forum.

psemiletov avatar Sep 18 '24 17:09 psemiletov

I just tried building on AVL-MXE which is based on Debian 12 and installed here as multi-boot on the same computer. Works perfectly there, no issue. Based on your question of which drumkit was last, it was circAfrique v4 from Hydrogen. So I moved all Hydrogen kits temporaraily so only drumlabooh kits were shown and it still crashed. It happens every time when scrolling to the bottom of the list, doesn't matter if a kit is selected or not. Considering it works in AVL-MXE and works here if I don't scroll to the bottom of the list, I will resign myself to the conclusion it is not easily solvable, or reproduceable outside of my particular Debian 12 install.

Also I'm not sure how important it is, but libwebkit2gtk-4.0-dev needs to be included in dependencies to satisfy all of the module search in cmake. libwebkit2gtk-4.1-0 is also available in Debian but probably won't satisfy it. Both of these are satisfied after installing libwebkit2gtk-4.0-dev and its deps :

-- Checking for modules 'webkit2gtk-4.0;gtk+-x11-3.0'
--   Package 'webkit2gtk-4.0', required by 'virtual:world', not found
--   Package 'gtk+-x11-3.0', required by 'virtual:world', not found

RattusSolarus avatar Sep 19 '24 08:09 RattusSolarus

Hello! Thank you for the feedback! 'webkit2gtk-4.0;gtk+-x11-3.0' are not needed, it's ok that cmake warns about their absence. JUCE uses them at WebBrowser, but Drumlabooh doesn't use WebBrowser. The mystical crash on the scrolling is tough. At the last commit I've add the additional checking for emptiness of list items, possiblly it helps. Anyway, to fix it properly I need to reproduce it and debug :(

psemiletov avatar Sep 19 '24 11:09 psemiletov

Fixed! :)

psemiletov avatar Apr 27 '25 17:04 psemiletov