--- linuxsampler/trunk/src/scriptvm/tree.h 2017/05/31 21:07:44 3260 +++ linuxsampler/trunk/src/scriptvm/tree.h 2017/06/05 18:40:18 3277 @@ -690,14 +690,15 @@ ArrayList polyphonicIntMemory; VMExecStatus_t status; + StmtFlags_t flags; ArrayList stack; int stackFrame; int suspendMicroseconds; size_t instructionsCount; ExecContext() : - status(VM_EXEC_NOT_RUNNING), stackFrame(-1), suspendMicroseconds(0), - instructionsCount(0) {} + status(VM_EXEC_NOT_RUNNING), flags(STMT_SUCCESS), stackFrame(-1), + suspendMicroseconds(0), instructionsCount(0) {} virtual ~ExecContext() {} @@ -720,6 +721,7 @@ stack[0].statement = NULL; stack[0].subindex = -1; stackFrame = -1; + flags = STMT_SUCCESS; } int suspensionTimeMicroseconds() const OVERRIDE { @@ -734,6 +736,10 @@ size_t instructionsPerformed() const OVERRIDE { return instructionsCount; } + + void signalAbort() OVERRIDE { + flags = StmtFlags_t(flags | STMT_ABORT_SIGNALLED); + } }; } // namespace LinuxSampler