Browse Source

Fixed infinite loop in isfinite function with GCC #221

Christophe Riccio 11 years ago
parent
commit
96ef6ae9ba
2 changed files with 4 additions and 1 deletions
  1. 3 1
      glm/gtx/compatibility.inl
  2. 1 0
      readme.txt

+ 3 - 1
glm/gtx/compatibility.inl

@@ -7,6 +7,8 @@
 // File    : glm/gtx/compatibility.inl
 ///////////////////////////////////////////////////////////////////////////////////////////////////
 
+#include <limits>
+
 namespace glm
 {
 	// isfinite
@@ -21,7 +23,7 @@ namespace glm
 #		elif(GLM_COMPILER & GLM_COMPILER_GCC && GLM_PLATFORM & GLM_PLATFORM_ANDROID)
 			return _isfinite(x) != 0;
 #		else
-			return isfinite(x) != 0;
+			return x >= std::numeric_limits<genType>::min() && x <= std::numeric_limits<genType>::max();
 #		endif
 	}
 

+ 1 - 0
readme.txt

@@ -42,6 +42,7 @@ GLM 0.9.5.5: 2014-XX-XX
 - Fixed std::nextafter not supported with C++11 on Android #213
 - Fixed missing value_type for dual quaternion
 - Fixed return type of dual quaternion length
+- Fixed infinite loop in isfinite function with GCC #221
 
 ================================================================================
 GLM 0.9.5.4: 2014-06-21