Hi all, I have been trying to resolve a problem in the OSX build; the linuxsampler test (in src/testcases) did not pass. I noticed this issue only recently after I finally installed cppunit on my machine.
The problem seemed to be caused by the implementation of pthread in OSX. It looks like OSX does not have PTHREAD_CANCEL_ASYNCHRONOUS cancel type, although pthread_setcanceltype() does not result in an error. As a workaround, I inserted calls to pthread_testcancel() here and there, and now the cppunit test passes, and linuxsampler looks behaving better. Instead of putting the added code within #if __APPLE__ ... #endif, I added a new config option (--enable-pthread-testcancel) and enabled it for the OSX build. I hope I did not break anything in other platforms, but if I screwed up anything sorry about it. As a side effect, voice stealing now seems to be working correctly (previously it was not working, presumably because the thread of the running voice was not properly canceled). On the other hand, there are still issues under high-load conditions (noises, etc.) I will continue to look into it. Any inputs are welcome! Regards, Toshi Nagata ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Linuxsampler-devel mailing list Linuxsampler-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel