This exception is one of the easiest to nail down and fix. Almost always, it is related to unfinished recursion or mutual recursion:
http://en.wikipedia.org/wiki/Recursion[
^],
http://en.wikipedia.org/wiki/Mutual_recursion[
^].
Use the debugger, put a breakpoint where the exception is thrown. You will observe that the code is repeated many times in execution. To see where a call comes from, use "Call stack" debugger window. When you see what the calling code is repeated, move your breakpoint there, until you see the root of the problem.
—SA