airwave icon indicating copy to clipboard operation
airwave copied to clipboard

Corrupted double linked list

Open lunadog opened this issue 11 years ago • 2 comments

I get this error in renoise after loading a new plugin in place of an old one.. To reproduce:

In renoise, load P8, choose the Bright Strings patch, then hold a note, and without closing the GUI, load Spire (Demo) into the same slot. Hold a note down and after moving the LFO1 rate knob, the host crashes - renoise says

Renoise Plugin Server LOG> Closing log file... *** Error in `renoise': corrupted double-linked list: 0x0000000008fd68d0 ***

lunadog avatar Oct 03 '14 21:10 lunadog

It appears to me that this may be due to airwave not closing the old plugin before opening the new one which is supposed to replace it. This is the Log output:

1412804598.191503790 P8.dll : (0x9) effGetChunk: index=0, data_=0xf67df312 1412804598.192477542 P8.dll : effGetChunk: 49806 1412804598.192829507 P8.so : effGetChunk: chunk size 49806 bytes 1412804598.193377969 P8.dll : handleGetDataBlock: 10220 bytes 1412804598.193626808 P8.dll : handleGetDataBlock: 10220 bytes 1412804598.193831327 P8.dll : handleGetDataBlock: 10220 bytes 1412804598.193989439 P8.dll : handleGetDataBlock: 8926 bytes 1412804598.194220611 P8.so : effGetChunk: received 49806 bytes 1412804598.920199873 airwave-plugin : Starting Airwave master unit 0.5.0 1412804598.920303604 Spire.so : Plugin binary: /home/james/.vst/airwave/Spire.so 1412804598.920335270 Spire.so : Host binary: /usr/local/bin/airwave-host-32.exe 1412804598.921768996 Spire.so : VST binary: /home/james/.wine/drive_c/Program Files/VSTPlugins/Spire (x86)/Spire.dll 1412804598.921793473 Spire.so : Main thread id: 0xf7155a00 1412804598.922759149 Spire.so : Child process started, pid=28286 1412804598.922896161 Spire.so : WINELOADER is not set, using wine from the PATH 1412804598.923422810 Spire.so : Callback thread started 1412804598.923458173 Spire.so : Waiting for child response... 1412804599.399782709 airwave-host : Starting Airwave slave unit 0.5.0 1412804599.399809014 Spire.dll : Main thread id: 0x26 1412804599.445058783 Spire.dll : Waiting for master unit request... 1412804599.605277260 Spire.dll : Slave unit initialized 1412804599.605289701 Spire.so : VST plugin summary: 1412804599.605747534 Spire.so : flags: 0x00000131 1412804599.605760545 Spire.so : program count: 0 1412804599.605763568 Spire.so : param count: 714 1412804599.605766103 Spire.so : input count: 0 1412804599.605768688 Spire.so : output count: 2 1412804599.605771459 Spire.so : unique ID: 0x53706972 1412804599.605774843 Spire.so : version: 1 1412804599.605779243 Spire.so : Master unit initialized 1412804599.606640922 Spire.so : Unhandled dispatch event: effVendorSpecific 1412804599.606699972 Spire.so : Setting block size to 256 frames 1412804599.607119541 Spire.dll : Audio thread started 1412804599.607210609 Spire.so : Setting block size to 256 frames 1412804599.657211591 Spire.dll : Audio thread terminated 1412804599.658175003 Spire.dll : Audio thread started 1412804599.658752520 Spire.so : Unhandled dispatch event: effSetSpeakerArrangement 1412804599.852160083 Spire.so : effGetChunk 1412804599.852198558 Spire.dll : (0x26) effGetChunk: index=0, data_=(nil) 1412804599.852921721 Spire.dll : effGetChunk: 804915 1412804599.852994770 Spire.so : effGetChunk: chunk size 804915 bytes 1412804599.854711802 Spire.dll : handleGetDataBlock: 10220 bytes 1412804599.854768049 Spire.dll : handleGetDataBlock: 10220 bytes 1412804599.854811319 Spire.dll : handleGetDataBlock: 10220 bytes 1412804599.854853592 Spire.dll : handleGetDataBlock: 10220 bytes 1412804599.862982597 Spire.so : effGetChunk: received 804915 bytes 1412804600.377539749 Spire.so : Unhandled dispatch event: effSetEditKnobMode 1412804600.717475726 P8.so : Closing plugin 1412804600.717499903 P8.so : Waiting for callback thread termination... 1412804600.807382852 P8.so : Callback thread terminated 1412804600.807561831 P8.so : Waiting for child process termination... 1412804600.818359508 P8.dll : Waiting for audio thread termination... 1412804600.863600898 P8.dll : Audio thread terminated 1412804600.874145572 P8.dll : Slave unit terminated 1412804600.876190810 P8.so : Child process terminated 1412804600.876515371 P8.so : Master unit terminated

lunadog avatar Oct 08 '14 21:10 lunadog

OK. I have managed to fix this bug now. Seems that if I comment out the whole of the case effClose: in slaveunit.cpp nothing bad happens, and this error no longer occurs. Plugins close in renoise fine.

Doing some more testing in Bitwig, I think this "fix" leaves ghost processes running of the plugins.. Not a problem in Renoise for some reason.

lunadog avatar Oct 10 '14 09:10 lunadog