Hey Jules -
Strange issue here with the messageManager and PluginListWindow. It doesn’t happen in the example PluginHost and hence is likely my problem; although it is also definitely a newish issue for me (meaning it certainly didn’t happen pre-JuceQuake … so has something to do with a revision somewhere along the way).
Anyway …
I have a VST/AU host that behaves much like the example one. Scanning is handled in the same way verbatim (using the PluginListWindow class from the example code). Lately, I started getting a crash just after the scan (as soon as I click on the “ok” dialog that mentions that a few scanned plugins appear to be plugs but don’t work properly).
There is a modal loop that is running, and it get’s stuck because something has been deallocated in the interim (see attachment).
Sometimes the object gets cleanly deallocated between calls and the program continues running as expected, having scanned successfully. However, in those instances another error appears when exiting the program …
in juce_mac_MessageManager class : line 217 in mm file
if (oldDelegate != nil)
[NSApp setDelegate: oldDelegate];
Which seems to indicate a previous appDelegate? That seems dangerous, and I’m not sure when/why this was created … but figure you are much more likely to know. It breaks here because the oldDelegate no longer exists, but the pointer apparently does.
Any thoughts are appreciated, as always.