--- parser3/src/main/execute.C 2002/11/01 06:18:06 1.292 +++ parser3/src/main/execute.C 2002/11/22 16:16:33 1.294 @@ -5,7 +5,7 @@ Author: Alexandr Petrosian (http://paf.design.ru) */ -static const char* IDENT_EXECUTE_C="$Date: 2002/11/01 06:18:06 $"; +static const char* IDENT_EXECUTE_C="$Date: 2002/11/22 16:16:33 $"; #include "pa_opcode.h" #include "pa_array.h" @@ -123,6 +123,11 @@ void Request::execute(const Array& ops) Array_iter i(ops); while(i.has_next()) { + if(interrupted()) + throw Exception("parser.interrupted", + 0, + "execution stopped"); + Operation op; op.cast=i.next(); #ifdef DEBUG_EXECUTE @@ -864,7 +869,7 @@ Value *Request::get_element(const String value_ready: if(value) - value=&process_to_value(*value); // process possible code-junction + value=&process_to_value(*value); // process possible code-junction else value=NEW VVoid(pool());