mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-15 04:50:43 +02:00
Back the VST3 plugin factory by an IPtr
This prevents REAPER from crashing when removing the last instance of a plugin and then readding it. REAPER doesn't unload the module even after it removes its last plugin factory instance. This means that before this the plugin factory would be freed but we still had a seemingly valid pointer to it that we would try to access.
This commit is contained in:
@@ -18,6 +18,7 @@
|
||||
|
||||
#include <pluginterfaces/vst/ivstcomponent.h>
|
||||
|
||||
#include "../vst3.h"
|
||||
#include "plugin-proxy.h"
|
||||
|
||||
YaPluginFactoryImpl::YaPluginFactoryImpl(Vst3PluginBridge& bridge,
|
||||
|
||||
@@ -16,7 +16,11 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "../vst3.h"
|
||||
#include "../../../common/serialization/vst3/plugin-factory.h"
|
||||
|
||||
// We need an `IPtr<YaPluginFactoryImpl>` in `Vst3PluginBridge`, so we need to
|
||||
// declare this slightly differently to avoid circular includes.
|
||||
class Vst3PluginBridge;
|
||||
|
||||
class YaPluginFactoryImpl : public YaPluginFactory {
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user