我目前正在运行一个带有LUA_MASKCALL
附加钩子的Lua脚本,钩子函数实现如下:
void LuaHook(lua_State *L, lua_Debug *ar) {
switch(ar->event) {
case LUA_HOOKCALL:
lua_getinfo(L, ">n", ar);
//breakpoint here...
} break;
default:
break;
}
}
我想获得被调用函数的名称,但我不确定我是否正确执行它,因为它似乎永远不会给我任何东西(断点在适当的时候被击中)。被调用的函数是绑定的C函数,它们具有名称,因此看起来很奇怪。整体lua_getinfo
对我来说是一个完全的谜,文档也不会清楚,所以任何帮助都会在这一点上受到高度赞赏。
答案 0 :(得分:3)
lua_getstack
做了这个伎俩,所以没关系