浏览代码

Fix Divide-by-zero in vector3

Fix for https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=29655
Kim Kulling 4 年之前
父节点
当前提交
0969bf3500
共有 1 个文件被更改,包括 3 次插入0 次删除
  1. 3 0
      include/assimp/vector3.inl

+ 3 - 0
include/assimp/vector3.inl

@@ -154,6 +154,9 @@ const aiVector3t<TReal>& aiVector3t<TReal>::operator *= (TReal f) {
 template <typename TReal>
 template <typename TReal>
 AI_FORCE_INLINE
 AI_FORCE_INLINE
 const aiVector3t<TReal>& aiVector3t<TReal>::operator /= (TReal f) {
 const aiVector3t<TReal>& aiVector3t<TReal>::operator /= (TReal f) {
+    if ((T) f==0.0) {
+        return *this;
+    }
     const TReal invF = (TReal) 1.0 / f;
     const TReal invF = (TReal) 1.0 / f;
     x *= invF;
     x *= invF;
     y *= invF;
     y *= invF;