When I run one of our VST3 JUCE-based plugins in Cubase 10 on Windows, the Direct Offline Processing function has a problem, but I don’t know what causes it or if it’s a Cubase, JUCE VST3 wrapper or plugin problem. When it goes to Apply the changes (either via Auto-Apply being checked or by clicking Apply), it hangs, and I have to kill Cubase. Debugging, I see an exception being thrown when this code is executed:
tresult PLUGIN_API setContentScaleFactor (Steinberg::IPlugViewContentScaleSupport::ScaleFactor factor) override
{
#if (JUCE_MAC || JUCE_IOS)
ignoreUnused (factor);
#else
if (auto* editor = component->pluginEditor.get()) // EXCEPTION HERE
{
editor->setScaleFactor (factor);
return kResultTrue;
}
#endif
return kResultFalse;
}
The problem seems to be that the “component” member is “empty”. There is no editor, in other words, but something is trying to set the scaling factor for the editor window. The call stack just says it comes from external code, so I guess the host is calling this?
Should this function have a fallback position of component is nullptr? Or is this a Cubase bug? Or…?
EDIT: we are using JUCE 5.3.2, by the way, in case this has been addressed already.
