fix: VST3 teardown under lock + re-attach hang + editor window on replace

- InstrumentEngineManager::assign: destroy replaced instrument OUTSIDE mu_
  (VST3 terminate/removed can block -> audio loop stall -> bridge Not
  Responding, transport stop hangs, notes never off)
- main.cpp LOAD job: DestroyWindow any open editor window of the channel
  before assign (replace VSTi -> SF2 with editor alive hung in removed())
- Vst3Instrument: reload() fresh plugin instance on second openGUI after
  close (Nexus etc. hang at view->attached() twice on same component)
This commit is contained in:
2026-08-13 12:48:30 +07:00
parent 3f59c2c4c2
commit c3eb0c9d16
4 changed files with 67 additions and 1 deletions
+2
View File
@@ -36,6 +36,8 @@ private:
uint32_t maxBlockSize_;
bool loaded_;
bool guiAttached_;
bool hasAttachedOnce_;
bool reload();
};
#endif // VST3_INSTRUMENT_H