Peter Hunsberger wrote:
>On 1/18/06, Ralph Goers <Ralph.Goers@dslextreme.com> wrote:
>
>
>
>>However, we have been able to recreate the loop without entering bad
>>data.
>>
>>
>
>How ? Just random pounding on the calculator?
>
>
Yup. With nornal input.
>
>
>>Thoughts and comments are welcome.
>>
>>
>
>Looks to me like both times you've caught the process of a
>continuation being trapped and a flow script being executed as a
>result. Slightly different exit out of the continuations handler
>however: ContinuationInterpreter.interpret(ContinuationInterpreter.java:657)
>may provide the clue you need? Break points on one of the earlier
>ContinuationInterpreter points might also help if you can reproduce
>with a debugger attached?
>
>
I looked at what I believe is the right version of
ContinuationInterpreter
(http://svn.cocoondev.org/repos/rhino+cont/branches/BEFORE_PACKAGENAME_CHANGE/rhino1_5R4pre/src/org/mozilla/javascript/continuations/ContinuationInterpreter.java)
and found that it has a while(true) look and that both line 657 and line
1134 are within it. The loop has a really large switch statement (line
657 is TokenStream.SETNAME and 1134 is NON_TAIL_CALL . Unfortunately, I
have no idea what it is trying to do. but apparently it never breaks out
of the loop.
Ralph
|