I just added some debugging script to figure out how many times
Firefox and IE execute the statements before they exit out of the
infinite loop.

IE displayed a message - "Stack overflow" and exited after 2555
invocations.
FireFox - exited after 1000 invocations .


I think the logic to detect infinite loop is part of their
ScriptEngine right. Otherwise, how did both of the browsers exit after
a low number of invocations?

If I put code to limit the number of lines that are interpreted, it
still results in High CPU and Memory usage. Any suggestions?

I have pasted my debug code below:

<html>

<head>
<script>

  var count = 0;

</script>
</head>
<body>

  <a href='http://google.com' id='a1'>Google</a><br>
<script>

var RealWinOpen = null;

function SymOnLoad()
{
        if(RealWinOpen != null)
        {
              count++;
              RealWinOpen();
        }

}

RealWinOpen = SymOnLoad;

RealWinOpen();
</script>

<script>

  document.write("Count value is : " + count);

</script>
</body>

</html>


_______________________________________________
dev-tech-js-engine-rhino mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-tech-js-engine-rhino

Reply via email to