ccArrayRemoveAllObjects
2016-03-25 17:19
435 查看
最近游戏项目bugly收到若干崩溃日志,简单日志如下:
SIGSEGV(SEGV_MAPERR)
#00 pc 00a89062 /data/app-lib/com.bilibili.meng.uc-2/libcocos2dcpp.so (cocos2d::ActionManager::removeAllActionsFromTarget(cocos2d::Node*) +09) [armeabi-v7a] |
#01 pc 00a54627 /data/app-lib/com.bilibili.meng.uc-2/libcocos2dcpp.so (spritebuilder::CCBAnimationManager::~CCBAnimationManager() +18) [armeabi-v7a] 翻阅cocos2d-x代码,该函数是 首先感觉 if (ccArrayContainsObject(element->actions, element->currentAction) && (! element->currentActionSalvaged)) 这一行element->actions不判空是不行的,因为: 这里面的调用没判空 直接把指针拿来用了。 但是从bugly上看问题并非出在这里,而是出在ccArrayRemoveAllObjects这个接口的调用上。 这个接口也是这样,没有判空,首先抛却res是否正确的情况,这样的不判空就用指针的调用是不被允许的。 不知道有没有大神遇到过这样的情况。 |
相关文章推荐
- 我是运营,我没有假期
- 每个 Linux 游戏玩家都绝不想要的恼人体验
- 在 Fedora 上使用 Steam play 和 Proton 来玩 Windows 游戏
- Steam 让我们在 Linux 上玩 Windows 的游戏更加容易
- 如何使用 Steam Play 在 Linux 上玩仅限 Windows 的游戏
- 新一代iPad适配应用之游戏篇
- VB实现的《QQ美女找茬游戏》作弊器实例
- C#实现洗牌游戏实例
- C#实现的算24点游戏算法实例分析
- C#实现简单的井字游戏实例
- C++编写简单的打靶游戏
- Cocos2d-x中背景音乐和音效使用实例
- C++实现基于控制台界面的吃豆子游戏
- Cocos2d-x学习笔记之CCScene、CCLayer、CCSprite的默认坐标和默认锚点实验
- Cocos2d-x UI开发之CCControlPotentiometer控件类使用实例
- Cocos2d-x UI开发之文本类使用实例
- Cocos2d-x保存用户游戏数据之XML文件是否存在问题判断方法
- Cocos2d-x UI开发之菜单类使用实例
- Cocos2d-x UI开发之CCControlButton控件类实例
- Cocos2d-x学习笔记之世界坐标系、本地坐标系、opengl坐标系、屏幕坐标系