lua-users home
lua-l archive

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


Hi,

Mark Hamburg wrote:
> >   if (!L->allowhook) return;
> > 
> > To the beginning of luaC_step to avoid recursive processing during GC
> > metamethod handling.
> 
> At least with the RVM patch, one actually wants:
> 
>     if (nohooks(L)) return;

Umm, but luaC_step will only ever call back another function inside
GCTM and this one _does_ disable hooks (both in the original core and
with the RVM patch). And GCTM suspends the GC, too, to avoid recursive
calls to luaC_step. I.e. infinite recursion is already taken care of.

I can only infer that you see a memory leak or infinite recursion,
but I fail to see how your change improves the situation. Care to explain?

Oh and completely disabling the GC inside hooks is at least problematic.

Bye,
     Mike