Yes, you are right, the old Csound instance should only be destroyed after setting the host data pointer for the new one, or the host data pointer should be saved to a temporary variable before calling csoundDestroy(). Either way, this is trivial to fix, but unfortunately the CVS will be down for at least a few more days, so we have to wait. On Thursday 11 May 2006 21:11, Victor Lazzarini wrote: > Looking again at CsoundPython.cpp, it seems right that there > was a memory access exception with csound5GUI. This bit of > code, which is responsible for it, is suspect: > > csoundDestroy(csound); > csound = cppSound->getCsound(); > csoundSetHostData(csound, csoundGetHostData(*csound_)); > csoundSetMessageCallback(csound, > > &CsoundGUIConsole::messageCallback_Thread); > > It appears that by destroy 'csound' we destroy *csound_, > which then causes the csoundSet...() API calls to fail. > > I don't really understand the code and the reasons why you > have to create a new instance and destroy the old one. It > appears that is because you want the derived object rather > than the base, which is fine, but it is crashing here. > > If we on the other hand do not destroy the old instance, > then it's OK. There is no crash. I don't really want to go > modifying code that I don't fully understand, so I'll leave > it up to the authors to fix it, now that we know where the > problem lies. ------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ Csound-devel mailing list Csound-devel@lists.sourceforge.net