diff options
Diffstat (limited to 'engines/parallaction/parser_ns.cpp')
-rw-r--r-- | engines/parallaction/parser_ns.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/engines/parallaction/parser_ns.cpp b/engines/parallaction/parser_ns.cpp index e6db9bf17b..909753e981 100644 --- a/engines/parallaction/parser_ns.cpp +++ b/engines/parallaction/parser_ns.cpp @@ -327,6 +327,9 @@ void ProgramParser_ns::parseInstruction() { InstructionPtr inst(new Instruction); ctxt.inst = inst; + + _currentInstruction = _program->_instructions.size(); + _parser->parseStatement(); _program->_instructions.push_back(inst); @@ -337,7 +340,6 @@ void ProgramParser_ns::parse(Script *script, ProgramPtr program) { _script = script; _program = program; - ctxt.openIf = InstructionPtr(); ctxt.end = false; ctxt.locals = program->_locals; @@ -348,7 +350,7 @@ void ProgramParser_ns::parse(Script *script, ProgramPtr program) { } while (!ctxt.end); _parser->popTables(); - program->_ip = program->_instructions.begin(); + program->_ip = 0; } void Parallaction_ns::loadProgram(AnimationPtr a, const char *filename) { |