一根毛,让微信无限“崩溃”( 二 )

出于好奇 , 研究人员对这张图进行研究 , 经观察发现 , 该图片只有在安卓版微信上才会出现崩溃 , 而 iOS 版、PC / MAC 以及网页版都能够正常使用并显示 , 研究人员测试的只有微信 7.0 以上的安卓版 , 但都出现崩溃状态 , 其它低版本的微信并未进行测试 。

对于这个表情为什么会崩溃 , 看雪会员“葫芦娃”对它进行了深入的分析 。

根据看雪会员“葫芦娃”提供的分析崩溃信息显示 , 该表情导致的崩溃地址在libwechatcommon.so (Java_com_tencent_mm_plugin_gif_MMGIFJNI_drawFramePixels+124) , 原因是本地 GIF 库在画帧像素时内存溢出导致微信崩溃 , 或许这就是微信安卓版出现的 bug 。

但由于没有微信的源代码 , 所以研究人员无计可施 , 只能换个角度来分析 , 那就是尝试修复这个 GIF 表情图片 , 对该图片进行详细分析研究 。

研究人员“葫芦娃”对该表情的每一帧数据进行观察 , 根据微信崩溃的时机分析 , 出现崩溃的时候图片正处于加载阶段 , 因此问题可能出现在第一帧或第二帧 。

推荐阅读