<div dir="ltr">Dear ChucKists,<br><br>Another day, another novel and exciting way to get the whole VM stuck;<br><br>Wurely w =&gt; dac;<br>1.0 / 0 =&gt; w.freq;<br>1 =&gt; w.noteOn;<br>second =&gt; now;<br><br>At a frequency of infinity (which admittedly is a bit silly but it happened by accident...) Wurley (and probably the other FM instruments as well, I imagine) gets completely stuck and takes 100% CPU time. This is quite understandable but what&#39;s not so nice is that this gets the whole VM stuck as well. Watchdog will offer to stop the shred (in the Mini) but fails... so that forces us to quit the whole thing the hard way.<br>
<br>I think LiSa can cause a similar situation if we request a lot of voices very quickly, say one every few ms, and she runs out of voices (I&#39;m not yet certain about the exact conditions there).<br><br>Generally it seems like watchdog is unable to remidy the situation if it&#39;s a UGen and not a shred that gets stuck. I&#39;m not sure how we should deal with this. Perhaps there could be some way to get watchdog to interupt UGens, or perhaps we should sanitise UGen function calls. I&#39;m not sure, for example, whether there is a perceived need for fm electrical pianos to accept frequencies above the nequist... It probably can&#39;t be avoided that some things will get suck under some conditions but I would like to have some safeguards against this taking down the whole VM, where possible.<br>
<br>Yours,<br>Kas.<br></div>