• antirez's avatar
    Set LUA_MASKCOUNT hook more selectively. Fixes issue #480. · 0ad10db2
    antirez authored
    An user reported a crash with Redis scripting (see issue #480 on
    github), inspection of the kindly provided strack trace showed that
    server.lua_caller was probably set to NULL. The stack trace also slowed
    that the call to the hook was originating from a point where we just
    used to set/get a few global variables in the Lua state.
    
    What was happening is that we did not set the timeout hook selectively
    only when the user script was called. Now we set it more selectively,
    specifically only in the context of the lua_pcall() call, and make sure
    to remove the hook when the call returns. Otherwise the hook can get
    called in random contexts every time we do something with the Lua
    state.
    0ad10db2
scripting.c 32.2 KB