Cabbage Logo
Back to Cabbage Site

Crash on close on windows [resolved]

Lately, I’ve seen a crash on exit happening when using Cabbage plugs in Reaper. This is on Windows 10. Closing a Reaper project containing more than one Cabbage plugin makes Reaper crash. It looks like there is something happening when it closes the next to last one. It took me some time to realize this was not related to more advanced features, but not I got it happening on the simplest of my plugins too.

Just for reference, attaching the one I tested with just now. A simple lpf18 with distortion and a flanger. Put this on track 1, duplicate the track until you have 3 tracks. Save. Close the project. For me it crashes while Reaper displays 'Removing track 2

'LPF18_Dist_QuadFlang.csd (4.0 KB)

Thanks Oeyvind. What version of Csound do you have installed? I was seeing crashes on exit before the last official release. It was the existence of Mike’s vst4cs.dll that was causing the problems. However, they seem to have been resolved with the latest official 6.10 package.

I tried to replicate the steps you outline but I don’t get any crashes. If you are using the latest Csound release, then can you try removing the vst4cs.dll from the Csound bin or plugins folder? In fact, if you wish to make sure we are using the exact same binaries, you can try this Csound. And you can try the latest beta release of Cabbage here.

p.s. let me know if you have any issues with that Csound installer. We are considering replacing the current Windows installer with it, due to some issues with the current installer, i.e, some parts of CsoundQT are broken, and there is no manual…

Thanks, testing now.

But, testing the Csound version on the CLI leaves me without a rtaudio module.
orch now loaded
audio buffered in 4096 sample-frame blocks
unknown rtaudio module: ‘PortAudio’, using dummy module
rtaudio: dummy module enabled
writing 8192 sample blks of 64-bit floats to dac

And, there seems to be some OSC related issue, as my mediator plugin says
error: syntax error, unexpected T_IDENT (token “OSCinit”) from file subscriber_connect.inc (3)
from file C:\Cabbage_VST\CabbageEfx\featexmod\vst_mediator_interprocess.csd (1)
line 33:
>>> gihandle OSCinit <<<
Unexpected untyped word gihandle when expecting a variable
Parsing failed due to invalid input!
Stopping on parser failure
cannot compile orchestra

… but I also got rid of the crash on exit, so something is right!

Ok, so let’s say we took two steps forward, and one step back! I’ll fix the rtaudio module issue. I’ve most likely failed to include something.

Oh wait, can you double check the OSX opcodes are there? Actually, you could also just install from the latest official release for Windows, if you don’t need CsoundQT.

Oh, … the OSCinit error won’t even go away when I go back to the previously installed Csound version. Darn…

Seems the path to the plugin dir has somehow become messed up, as csound -z only gives 1572 opcodes, and plugin opcodes, for example ‘padsynth’ does not sho up either. For the OSC opcodes the situation is a patchwork, since some OSC opcodes seem to be internal and some are plugins (e.g. I can find OSCraw and OSCsend in the opcodes list from csound -z, but not any other OSC opcodes)

… got it working. The problem was that the OPCODE6DIR64 system variable had been appended to by the Csound installler, so the same path was listed twice, with a semicolon in between as one would expect to work fine. When I cleaned it up by removing the duplicate and the semicolon, it works fine again.

Good catch. So my Csound installer should replace the existing path?

That is probably ok, but the best would maybe be to check if there is anything there, and if it is, do not add/append/replace?

… don’t know, it might warrant some sort of message to the user in either case? dialog box saying ‘you already have opcode dir set to xxxx, do you want to overwrite or keep?’

Unless the new location of the install is not the same as the previous one. I very much like that the OSX Csound installer ALWAYS puts Csound in the same place. Maybe we should ditch the install location option for Windows?

Sorry, you’re right of course. Replace is the only sane thing to do.

New idea, I’m just going to fix the Csound installer scripts and not be messing around with my own!