lua-users home
lua-l archive

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


> But it assumes that the table is the last argument passed to the
> function. Specifically it calls lua_rawset (L, -3) in the final for
> loop without having previously made sure the table is on the top of
> the stack (with pushvalue or settop). So if you pass additionnal
> parameters to lfs.attributes, lua_rawset is then called on the last
> value, and if it's not a table it can even segfault (had someone make
> the test with nil).

I've been bitten by this kind of bug more than twice. This is definitely
something to keep in mind when using the C API.