| By debugging csoundvst_tilde.c and making some very minor changes to the source, I was able to get the sample pd file to build and work with PD 0.38-devel-1.
By comparing the value of x->csound in the csoundapi_new function to the value in the csoundapi_perform function, I found that a side effect of some unknown computation was adding 1 to the address, causing a segment fault when later dereferencing any member of Csound. I added a t_int padding variable on either side of the csound member, and this removed the problem, although the unknown side effect may well still be overwriting memory somewhere else in the code.
I do not think there will be any unintended consequences of this change on Linux or OS X, but you never know.
I suggest that Victor Lazzarini take a look at the code to see where such overwriting might occur, or there may be tools to detect it. It could result from assigning an oversized object to an undersized location through a type cast, from directly overwriting an address, from overrunning a buffer, from overcounting in a loop, and so on.
At any rate, I am going to upload a new Windows installer for Csound5 including this wonderful PD extern.
Regards,
Mike
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net |