Bug? Cantabile Lite crashes when trying to use JUCE 'hello world' plugin

I am testing a synth I am working on right now with Cantabile Light (https://www.cantabilesoftware.com/) (win 10) and experienced something strange:

When testing my plugin (instrument or effect), an exception like this is thrown when I close Cantabile:

00028386 4 ! [06280:0]: Exception context: Unhandled exception filter
00028387 1 ! [06280:0]: Native exception: code:0xc0000005 address:0x00007FFAF084FD90 flags:0x00000000 params:0x0000000000000008,0x00007FFAF084FD90 rax:00007FFAF084FD90 rbx:0000000000000001 rcx:00000000000506FC rdx:000000000000001C rdi:0000000000000000 rsi:0000000080006011 r8:0000000000000000 r9:0000000000003844 r10:00007FFB2FD835F0 r11:0000000000000246 r12:0000000000000000 r13:000000000000001C r14:0000000000000000 r15:0000000000000000 cs:0033 ds:002b es:002b fs:0053 gs:002b ss:002b eflags:00010246 stack dump: 00007FFB2FCDE858 0000000000000001 0000000000000001 0000000000000001 0000000000000000 0000000000000000 0000000000000000 8000601100000000 0000000000000000 0000000000000000 0000000000000000 8000601100000000 0000000000000000 0000000000000000 00000000FE4C078C 0000000000000000 0000000080000003 0000000000000001 0000000000000008 0000000000000001 0000000000000000 00000000000002FA 00007FFB31811E43 0000000000000003 00000000007FC378 00007FFAFE4BCC20 00007FFAF23FD898 0000000000000001 0000000000000017 00000000000002FA FFFFFFFF00000001 00007

Cantabile and JUCE both have a good reputation regarding reliability, so I suspected a problem in my rather quick and dirty prototype implementation.
But: The same thing happens when I use the standard ‘hello world’ plugin (created using the wizard, no changes by me). So it is likely that I am not cause of the problem.
Now I wonder: Is it a Cantabile or a JUCE problem? Or is there maybe something wrong with the configuration of the plugin?

Is this problem known?


You can set the debugger (Visual Studio) to stop on an exception…

1 Like

When I close Cantabile while a JUCE VST3 (built in debug mode) is loaded, the debugger pauses in JUCE’s LeakedObjectDetector. The object being leaked is an instance of JuceVST3EditController.

Normally it’s the host’s responsibility to free the edit controllers of loaded VST3 instances before exit. If I debug in a different host (REAPER), I can see that the host decrements the reference count on the JuceVST3EditController, freeing it before the host exits.

I think it’s possible that Cantabile isn’t cleaning up plugin instances properly before exiting.

1 Like

Thanks! I’ll tell the Cantabile developers.
The good news is: Apparently it wasn’t me :slight_smile: