Crash日志
如果传入的CGPoint的值是NaN, 就可能触发这个Crash:
通过上述代码,模拟该crash,同时会在控制台看到如下输出:
判断有效性
在math.h
中存在如下宏定义:
结语
以上crash只存在于iOS8的各版本系统,猜测CGPathAddLineToPoint这个函数的内部实现中,增加了断言,正式发布时未被去掉。解决方案可以先判断CGPoint的有效性,然后再进行绘制。
如果传入的CGPoint的值是NaN, 就可能触发这个Crash:
通过上述代码,模拟该crash,同时会在控制台看到如下输出:
在math.h
中存在如下宏定义:
以上crash只存在于iOS8的各版本系统,猜测CGPathAddLineToPoint这个函数的内部实现中,增加了断言,正式发布时未被去掉。解决方案可以先判断CGPoint的有效性,然后再进行绘制。