[chuck-users] 1.3.1.1 (chimera) released (critical fix)

Ge Wang ge at ccrma.Stanford.EDU
Thu Sep 13 08:52:19 EDT 2012


Greetings all!

chuck-1.3.1.1 (chimera) is available:

     http://chuck.cs.princeton.edu/
     http://chuck.stanford.edu/

This version fixes a critical issue that was introduced in 1.3.0.0 where
member function calls in loop conditionals, paired with having an Object
reference in the body, can cause a crash.  This is quite likely the source
of the OSC-related crashes that quite a few people have reported recently.
It actually wasn't an issue with OSC (though we did tighten a few things
there too), but rather the common usage:

     // e is an Event in this example
     while( e.nextMsg() ) { /* do stuff... */ }

So, this should now be fixed (we think)!  This issue was a rather serious 
one (the code above is commonly found when working with OSC, MIDI, HID, 
and any time a member function is invoked in loop conditional).  We highly 
recommend updating to the latest as soon as convenient!

Thanks to everyone who reported issues and helped to track things down! 
If you'd like, please do give 1.3.1.1 a spin, and let us if you run into
additional issues -- we'll do our best to get things fixed as soon as we
can!

Thank you and ChucK on!

Best wishes,
Spencer, Ge + on behalf of chuck team!


1.3.1.1
---
   - (fixed) critical bug since 1.3 where member function calls in
             loop conditionals caused crashes when the loop body
             contained local Object's to be released;  this directly
             affects using OSC, MIDI, HID, which commonly employ
             syntax like: 'while( e.nextMesg() ) { ... }';
             -- this is most likely the cause of the OSC-related issues
             we've been seeing (thanks to Graham Coleman for tracking
             down and narrowingthe issue!)
   - (fixed) strengthened synchronization in OSC between internal
             listener thread and chuck VM code
   - (fixed) memory bug in OscRecv deallocation
   - (fixed) Machine.add( ... ) on windows now supports both '\\'
             and '/' in aboslute paths (previously only '\\').
             (thanks to Graham Coleman for finding this!)


More information about the chuck-users mailing list