On Sun, Apr 10, 2016 at 8:44 PM, Soni L. <fakedme@gmail.com> wrote:
On 10/04/16 05:06 PM, Nagaev Boris wrote:
On Sun, Apr 10, 2016 at 6:40 PM, Jura Pk <marsgpl@gmail.com> wrote:
Problem solved, thanks to Shmuel Zeigerman and Soni L.
After wrapping in lua_checkstack, the code works perfectly even with 1000
tables.
Seems, like lua_checkstack grows the stack =)
2016-04-10 21:27 GMT+03:00 Shmuel Zeigerman <shmuz@013net.net>:
On 10/04/2016 20:16, Jura Pk wrote:
I am stuck with a problem: when I'm trying to add 100 tables in Lua c
stack, I receive segfault on function end.
Code example:
lua_example.c: http://pastebin.com/GFvLwMY2
Makefile: http://pastebin.com/3EWJiVz7
test.lua: http://pastebin.com/1y22XvzK
See https://www.lua.org/manual/5.3/manual.html#lua_checkstack
--
Shmuel
By the way, why not to grow the stack automatically in pushing API
functions?
Because of overhead. Imagine checking the stack every operation vs checking
the stack once for 1000 operations, or however many you need.
If the stack has room for new element, than the check is just one
comparison, which would be perfectly predicted.