ScriptEngine.ExecuteFile hangs permanently instead of throwing JavaScriptException
Metalnem opened this issue · comments
Nemanja Mijailovic commented
ScriptEngine.ExecuteFile sometimes hangs permanently instead of throwing JavaScriptException when encountering syntactically invalid JavaScript code. Here is the full program that reproduces such behavior:
namespace Jurassic.Run
{
public class Program
{
public static void Main(string[] args)
{
new ScriptEngine().Execute("for(a=0;a<2;a++[1])1");
}
}
}
Chrome and Safari display the following error when running this JavaScript snippet:
SyntaxError: Unexpected token '['.
Found via SharpFuzz.
paulbartrum commented
The issue here is not that the loop hangs, it's that a++[1]
doesn't produce a syntax error (it should).
paulbartrum commented
A good catch, thanks!