lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


Failures do an implicit close, so opens and closes may not be 1:1. And
it would no cause a stack leak, anyway, as the current list is kept in
the registry instead of the stack.

I think the culprits are the runtime captures. The values returned by
a runtime capture are kept indefinitely in the stack. If there are
nested runtime captures then these values end up being replicated.
This behavior is inherited from regular LPEG... I am trying to think
of a way to fix it, but it is far from trivial.

--
Fabio Mascarenhas


On Thu, Jun 17, 2010 at 3:13 PM, Wesley Smith <wesley.hoke@gmail.com> wrote:
> BTW, should the IOpen and IClose opcode be matched 1:1?  I'm
> suspecting it's something in there that's exploding the Lua stack.
> Here's the sequence I see right now:
>
> IOpen
> IClose
> IOpen
> IOpen
> IClose
> IOpen
> IClose
> IOpen
> IOpen
> IClose
> IOpen
> IOpen
> IOpen
> IOpen
> IOpen
> IClose
> IOpen
> IOpen
> IClose
> IOpen
> IOpen
> IClose
> IOpen
> IOpen
>
> wes
>