记一个ABLUA代码的BUG - 神奇石器时代技术研究交流
神奇石器技术研究交流网 - 业务联系QQ:420004208

记一个ABLUA代码的BUG

  • 内容
  • 相关

这个BUG其实好几年就遇到了,一直没找到解决方法,影响范围是mylua/function.c下的使用static lua_State *lua的全部函数。

静态声明lua后只需要加载一次脚本即可,但问题在于这个lua的指针会莫名其妙被破坏。

例如FreeCharCreate函数出现指针被破坏,我们第一个想到这个函数有问题,但又无法解决,就直接在调用处直接屏蔽掉,防止这个函数出现无效指针,但是一旦屏蔽了,其他函数中的一个依旧会遭受破坏,结果就是依然崩端。哪怕用GDB调试就只知道是这个函数出现问题。

别人遇到没遇到不知道,反正我是遇到了,这个指针被破坏原因不明,有时候同样的端,不同的DATA,会出现一个老是崩,一个怎么都不会崩。最后解决方案就是判断指针是否被破话,如果被破坏就重新加载一次脚本即可。

目前已经不崩了。

版权声明:若无特殊注明,本文皆为《sa60》原创,转载请保留文章出处。

本文链接:记一个ABLUA代码的BUG - http://sa60.com/post-407.html

本文标签:

记一个ABLUA代码的BUG