octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

assert.m and CTRL-C


From: Michael Goffioul
Subject: assert.m and CTRL-C
Date: Thu, 28 Nov 2013 18:58:27 -0500

Hi,

While testing CTRL-C behavior while running the test suite, I noticed strange behavior of assert after interruption. I believe that one of them is due to the unprotected usage of call_depth persistent variable within assert.m.

If you happen to interrupt octave while executing assert.m, it's possible that call_depth is never properly decremented, as expected at the end of assert.m. This means that on the next assert call, call_depth will never reach -1 and the error will not be triggered. I noticed this kind of behavior after interrupting the test suite, something like "assert (0,1)" would not trigger any error. Using "clear all" would restore assert behavior, which makes me think it's related to the persistent variables.

This then brings me to a side question: if assert.m was using unwind_protect, would it be robust against CTRL-C interruption? I believe it would be, but I'm not 100% sure.

Michael.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]