Opening Plugin Editor bugs and crashes on Ubuntu 16.04

gui

#1

Using JUCE 5.0.1 on Ubuntu 16.0.4.2, when I open a VST plugin’s editor a bug that generally leads to a failed assertion occurs.
This happens with my plugins as well as the few I have tried from the examples directory, using BitWig and the Audio Plugin Host as hosts. Renoise reacts differently but eventually crashes.*

Upon opening a plugin’s Editor GUI, the size of the window grows seemingly infinitively and never actually draws the elements on the window. This can lead to freezing in the worst case. But sometimes certain assertions fail.

Generally jasert(data != nullptr) in juce_Image.cpp @ 403 is hit and fails.
On a couple occassions juce_VSTPluginFormat.cpp @ 660 fails jassert(getActiveEditor() == 0);.
After that these 2 assertions fail :

  • juce_Component.cpp @ 1116 : ASSERT_MESSAGE_MANAGER_IS_LOCKED_OR_OFFSCREEN
  • juce_Component.cpp @ 1918 : ASSERT_MESSAGE_MANAGER_IS_LOCKED

So, I guess the message thread fails to lock on to the MessageManager, this post seemed to have tackled and resolved a similar issue.
Granted, since this only happened a couple of times it could be unrelated.

To be clear, this Editor bug only happens when the Plugin Editor is created.
The Audio & MIDI work correctly and when AudioProcessor::hasEditor() returns false, the window that opens containing parameters functions, almost, correctly.
That is it opens, displays and controls the available parameters correctly.

Almost, because I’ve also noticed that certain windows grow in size when being dragged :

  • The non Editor GUI, opened with the AudioProcessor::hasEditor() returning false.
  • The Audio Settings & Available Plugins from the Audio Plugin Host.
  • The Audio Plugin Demo opened as a Standalone Plugin.

*Strangely, Renoise actually displays the editor with slighty wrong dimensions and blacked out sections, but the controls work. Resizing the plugin’s window greatly enlarges it and causes Renoise to eventually crash.

Any ideas ?


#2

Is this on a HiDPI display? Do you see the same behaviour if you turn off scaling?


#3

The scaling factor was < 1 …
Well spotted ! Thanks


#4

We’re currently working on improving JUCE’s scaling behaviour, but it’s not easy. I’ll add this to the list of issues.