Lmms: Add effects crashes lmms 1.2.0-rc7

Created on 25 Feb 2019  路  27Comments  路  Source: LMMS/lmms

Pressing "Add effect" on instruments or mixing channels crashes LMMS (every time). I am using a perhaps 2 year old version of Linux mint mate. Adding effects on an older LMMS version works, and then if I save the project file and open those project files in 1.2.0 rc7 the effects can be accessed and manipulated just fine.

LMMS crashes in a strange way, I have to force close the program because it stops responding, but even after force closing LMMS the music from the project file keeps playing (if I set the file to play before clicking add effect to crash LMMS). So I have to reboot my computer to actually stop all LMMS processes even after force closing.

bug

All 27 comments

I can confirm this also happens on rc8 appimage on solus linux. After clicking "Add effect" lmms freezes, can't even click the close button, I need to do "pkill -9 lmms" to close it.

Possible duplicate of https://github.com/LMMS/lmms/issues/3942. Can you see if you have the Calf LV2 plugins are installed? If so, can you see if the problem goes away when they're uninstalled?

On Solus I have: lv2, version: 1.14.0 and calf, version: 0.90.1. Also the hard freeze doesn't happen in lmms 1.1.3

Tested removing, calf lv2, and the problem persists. I started the lmms appimage from the terminal, to see if there was some relevant output there, but nothing is printed when it freezes.

@ni-code thanks. I still have a feeling it's related to the automatic scanning of plugins, Calf just happens to be one that we were already familiar with.

A vanilla install of Solus doesn't exhibit this problem. Can you provide any more information about possible audio plugins that you have installed?

image

I installed the following packages from the Solus package manager hoping to create a LADSPA conflict and still cannot reproduce the lockup:

  • LMMS 1.1.3
  • Calf LV2 plugins
  • Ardour
  • MDA-LV2

Is there a chance you have some VSTs that could be causing the problem? Does it go away if you change the VST Effect directory in preferences?

I'm going to do some testing, I'll report back when finish.

Ok, it's working now. I removed the lmmsrc.xml and started lmms, tested the "Add effect" and it works. So something must have been miss-configured. Want me to upload the config files? the working one and the broken one?

Uploaded the 2 lmms rc files, just in case you want to take a look, also note I dind't have any extra VSTs installed.
lmmsrc.zip

@ni-code thanks. The two entries that I see as suspect:

vstdir="/home/ninao/"                               #before
vstdir="/home/ninao/Documents/lmms/plugins/vst/"    #after

laddir="/usr/bin/../lib64//ladspa/"                 #before
laddir="/home/ninao/Documents/lmms/plugins/ladspa/" #after

Can you:

  • ls -al "/usr/bin/../lib64//ladspa/" and post the output?
  • See if restoring one of the above settings recreates the problem?

Using the old "broken" config file but replacing vstdir="/home/ninao/" with vstdir="/home/ninao/Documents/lmms/plugins/vst/" solves the problem. lmms dosen't freeze.

Thank you for your time.

EDIT:
just for clarification, if I leave vstdir="/home/ninao/" like that, in the rc file, lmms freezes when clicking "add effect".

Output of the cmd:
ninao@soul ~ $ ls -al "/usr/bin/../lib64//ladspa/"
total 412
drwxr-xr-x 2 root root 4096 jan 3 17:22 .
drwxr-xr-x 244 root root 151552 mar 6 18:17 ..
-rwxr-xr-x 1 root root 5248 jan 11 2016 amp.so
-rwxr-xr-x 1 root root 4920 jan 11 2016 delay.so
-rwxr-xr-x 1 root root 6216 jan 11 2016 filter.so
-rw-r--r-- 1 root root 166 jan 12 2016 ladspa-rubberband.cat
-rwxr-xr-x 1 root root 211040 dez 23 16:10 ladspa-rubberband.so
-rwxr-xr-x 1 root root 4520 jan 11 2016 noise.so
-rwxr-xr-x 1 root root 10880 jan 11 2016 sine.so

Thanks. Can you zip up all 7 files and attach them to this bug report? One of them is likely crashing the dialog.

Done, zipped the files.

ladspa.zip

Appears to be caused by this recursive VST scanning https://github.com/LMMS/lmms/commit/0d44dc6ac59f67f5e64c62092abfb7b8fe61643f. I'm not exactly sure yet, but I can reproduce with certain paths, and I have a feeling it has something to do with not properly handling the relatively directory ...

Ok, I was wrong, it has to do with the following:

entries that I see as suspect:

vstdir="/home/ninao/"

This just iterates through the $HOME directory until it reaches the end, which takes forever. I'll have to see how this is being accidentally set to such a bad default value.

Ok, I think I found it out...

  1. Delete ~/.lmmsrc.xml to clear the settings
  2. If not already, install LMMS 1.1.3 from a repo.
  3. Run, LMMS 1.1.3 taking defaults. Notice the VST directory is defaulted to your $HOME directory.
  4. Run the AppImage (it will pick up the old config file)
  5. Try to add an effect. The effect selection dialog will eventually show, but not until after it's recursed every folder in the user's $HOME directory.

@ni-code @Qtamo can you both confirm that you had LMMS 1.1.3 installed prior to using the AppImage? If so, that's why this problem is not happening for everyone that tries it.

Speculatively fixed in 9e6ce06. You can test it out here: <removed>

Make sure to restore that bad .lmmsrc.xml file for testing.

Note:

  • For users still requiring $HOME for VSTs (which is highly discouraged), you can change the path to e.g. "/home//ninao/" (notice the extra slash).
  • If this blacklist ends up causing more complaints, we can move it to an upgrade routine.
  • I find it a sane blacklist location since $HOME tends to contain a lot of directories which makes it susceptible of long search times (e.g. On my Desktop I have a symlink pointing to a shared drive and LMMS starts to recurse and scan ~\Desktop\My Shared Drive\... which is bad.

@tresf, Glad you found the reason. Yes, I had v1.1.3 installed prior to using the appimage. I tested with the appimage you linked with the bad lmmsrc file and the problem still happens. Also tested with double slash "//" same thing, it still freezes.

tested with double slash "//" same thing, it still freezes.

That's expected, it'll bypass the check I put in.

tested with the appimage you linked with the bad lmmsrc file and the problem still happens

Ok thanks, I'll see what I can dig up, there may be more than one issue here.

@ni-code is there a chance that you've changed your home folder and that /home/ninao/ is no longer your current home folder?

No, my home folder is /home/ninao/. In my home folder I have a few symlinks to different drives and one of the symlinks points outside of my pc into a local network drive, maybe that's why it's causing the freeze.

In my home folder I have a few symlinks to different drives and one of the symlinks points outside of my pc into a local network drive, maybe that's why it's causing the freeze.

Agreed, but what I'm concerned about is that you say the patched version doesn't fix it. The patched version won't allow /home/ninao/ any more. Were you definitely running the patched AppImage when you were testing?

yup. I used the lmms-1.2.0-rc8.11-linux-x86_64.AppImage.

tested again. I did this to reproduce:

  • delete /home/ninao/.lmmsrc.xml
  • start lmms version 1.1.3 to recreate the rc file, then quit lmms.
  • start lmms-1.2.0-rc8.11-linux-x86_64.AppImage.
  • try to add effect to the TripleOscillator (it freezes here)

Sorry for the delay. Indeed I have LMMS 1.1.3 installed. I can test the speculative fix as well as other things (with my noob bug testing skills) if necessary tomorrow.

If the LV2 plugins are still a concern: I have Ardour installed also which comes with LV2 plugins I think, would that affect LMMS? I can try and uninstall Ardour if that changes anything (I also have Zynfusion which is LV2 I guess?).

Do you want me to upload some files?

@Qtamo I installed Ardour also and it doesn't seem to be a factor. I can confirm that the AppImage I uploaded still suffers the problem. I'm performing a clean build now to see if the AppImage was bad. If it works for me, I'll have it uploaded momentarily.

Sorry, it was definitely a packaging mistake (you can tell it's and old version by going to About). Can you try this one? https://github.com/tresf/lmms/releases/download/v1.2.0-RC8/lmms-1.2.0-rc8.12-linux-x86_64.AppImage

@tresf This new appimage works good. Tested it again, it dosen't freeze anymore. Thank you.

Was this page helpful?
0 / 5 - 0 ratings