| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 146 人关注过本帖
标题:C++ 调用Lua API lua_settable crash
只看楼主 加入收藏
simple7
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2021-3-18
收藏
 问题点数:0 回复次数:0 
C++ 调用Lua API lua_settable crash
最近在写一个程序
主题是C++,嵌入Lua(v5.4.2)脚本

在调用Lua发生一些莫名其妙的Crash.
搞的我对Lua一点信心都没有了

CASE:
将数据压栈传递给Lua
查看crash dump文件

从 lua_settable(L, -3)开始进入,直到crash
此API调用需要注意是什么,可能是什么引起的?
而且是不是固定出现,相同数据压入过多次,都没问题

代码如下:
lua_getglobal(L, "GTAB");
lua_pushstring(L, "key");
lua_newtable(L);
// 还加入了一些其他的数据
// 此处保证栈平衡
lua_settable(L, 3); // dump 指示此处开始报错

dump trace 依次如下
lua_settable  lapi.c
luaV_finishset    lvm.c
luaG_forerror    ldebug.c
changedline       ldebug.c
luaG_runerror   ldebug.c
luaD_rawrunprotected    ldo.c//  crash最后的位置

不知道有无大神有类似经历。

求解



搜索更多相关主题的帖子: Lua 调用 API 数据 C++ 
2021-03-18 01:30
快速回复:C++ 调用Lua API lua_settable crash
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055887 second(s), 9 queries.
Copyright©2004-2021, BCCN.NET, All Rights Reserved