Midi Overlay Panels in Compiled Plugin Crashing DAWS?
-
@Soundavid Can confirm this worked for me in the plugin. Also tried recompiling HISE with the change, and it's more stable in handling the project now
Thoroughly crash tested the midi note display and drag&drop, all good. The other MidiOverlayPanels seem to work smoothly from cursory checks, as well.
-
@Goodflow Its working like charm for me too in my system, Im going to build it on windows today and report
-
@Soundavid All good on Windows here so far (tested HISE & plugin). Firing up a Linux vm to complete the trifecta, but this really seems to have done the trick.
-
@Soundavid said in Midi Overlay Panels in Compiled Plugin Crashing DAWS?:
@Goodflow Ok I debugged a lot this problem and I think I found the culprit... the problem persisted in my project when i called an expansion that loads the Midi Overlay and this is what I found.
-
The Plugin Crashes when is removed and loaded again but only if there is one instance running.
-
If you have multiple instances and remove/load the plugin works fine but when you remove the last one and try to load it again it crashes.
This means that the problem is when the plugin is closed completely so I checked the Midi Overlay Factory class in the source code and I found that the class is derived from the DeletedAtShutdown class from JUCE, this class deletes everything when the app is closed but maybe JUCE doesn't call this in plugins until the last instance is closed...
So, I removed the DeletedAtShutdown from the Midi Overlay Factory class in the Source code of the plugin (not re-building hise) and the problem disappears in the plugin...
I tested the plugin today in Logic checking memory and Cpu loads and works perfectly for now but maybe this could be a problem with another type of Midi Overlays or using the Standalone App or Windows (im using two MO tiles, Drag n drop and Midi Viewer).
@Christoph-Hart Maybe you might want to check this out
I have the same crash and I want to try your solution but I'm a little bit confused about what to delete where to delete? Can you point it more clear for a newby please?
-
-
HISE/hi_components/midi_overlays/MidiOverlayFactory.h
Line 40:
class MidiOverlayFactory: public DeletedAtShutdown
gets changed to
class MidiOverlayFactory
-
@Goodflow thank you so much.
-
@Goodflow said in Midi Overlay Panels in Compiled Plugin Crashing DAWS?:
HISE/hi_components/midi_overlays/MidiOverlayFactory.h
Line 40:
class MidiOverlayFactory: public DeletedAtShutdown
gets changed to
class MidiOverlayFactory
This fixes the Midioverlay Disappearing?
@Matt_SF Matt, Take a look๏ธโ
๏ธ
-
-
@ILIAM Is there a PR for this on github?
-
@d-healey not yet. I though i'd make a PR tonight after verifying it
-
@Matt_SF Noice, yeah good idea to check it doesn't break anything
-
Is there not a risk to let something pending in memory if it's not deleted?
-
I haven't faced any weirdness while tesing it, but of course I can't test it on different systems, so that's a questions for @Christoph-Hart : should I make a PR ?
-
@Matt_SF Matt,Hey
So the Disappearing tile fixed?
did you tried on different DAWs ? -
@ILIAM Yes. I've tested it in Ableton, FL Studio, Reaper and Cubase
-
@Matt_SF said in Midi Overlay Panels in Compiled Plugin Crashing DAWS?:
t in Ableton, FL Studio, Reaper and Cubase
Yeah Man, Lets goo
-
@Matt_SF So this is what you changed?
MidiOverlayFactory.h
class MidiOverlayFactory: public DeletedAtShutdown { public: Changed to (public DeletedAtShutdown >> Removed ) class MidiOverlayFactory { public:
Correct?
-
MidiOverlayFactory.h
class MidiOverlayFactory: public DeletedAtShutdown { public: Changed to (public DeletedAtShutdown >> Removed ) class MidiOverlayFactory { public:
Great news, fam! Everythingโs runninโ smooth as butter โ no issues at all with the MIDI Overlay Panel on Windows 10.
Tested the plugin in these DAWs so far: Ableton, Reaper, Cakewalk Sonar, and FL Studio โ all solid!
big shoutout to @Goodflow for puttinโ in that work, squashinโ the bug, and droppinโ the fix!
-
@Matt_SF You tested on Windows too or Mac?
-
@ILIAM On windows only - My plugin is not compiling on mac yet because of network compiling errors, on the latest commit.