metthal/IFJ-Projekt

IST_Jmpz performs bad cleanup after expression

Closed this issue · 1 comments

Inside intepreter.c::interpretationLoop::case IST_Jmpz, instructionPtr is updated and then it is used to cleanup expression, but it is already pointing at the wrong instruction.

Can be tested on

<?php

if (1)
{
    $x = put_string("1");
}
else
{
    $x = put_string("0");
}

Fixed.