diff --git a/glm/detail/func_common.inl b/glm/detail/func_common.inl index a788eb4c..5463e574 100644 --- a/glm/detail/func_common.inl +++ b/glm/detail/func_common.inl @@ -717,7 +717,11 @@ namespace detail return _isnan(x) != 0; # elif(GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)) # if(GLM_PLATFORM & GLM_PLATFORM_ANDROID) - return _isnan(x) != 0; +# if(GLM_PLATFORM_ANDROID_VERSION >= 19) + return std::isnan(x); +# else + return _isnan(x) != 0; +# endif # else return std::isnan(x); # endif @@ -788,7 +792,11 @@ namespace detail return _fpclass(x) == _FPCLASS_NINF || _fpclass(x) == _FPCLASS_PINF; # elif(GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)) # if(GLM_PLATFORM & GLM_PLATFORM_ANDROID) - return _isinf(x) != 0; +# if(GLM_PLATFORM_ANDROID_VERSION >= 19) + return std::isinf(x); +# else + return _isinf(x) != 0; +# endif # else return std::isinf(x); # endif diff --git a/glm/detail/setup.hpp b/glm/detail/setup.hpp index 3eb99bc9..cd56a19d 100644 --- a/glm/detail/setup.hpp +++ b/glm/detail/setup.hpp @@ -68,6 +68,8 @@ # define GLM_PLATFORM GLM_PLATFORM_CHROME_NACL #elif defined(__ANDROID__) # define GLM_PLATFORM GLM_PLATFORM_ANDROID +# include +# define GLM_PLATFORM_ANDROID_VERSION __ANDROID_API__ #elif defined(__linux) # define GLM_PLATFORM GLM_PLATFORM_LINUX #elif defined(__unix) diff --git a/readme.txt b/readme.txt index 8c5c6a3d..89721e88 100644 --- a/readme.txt +++ b/readme.txt @@ -42,6 +42,7 @@ GLM 0.9.5.4: 2014-0X-XX - Fixed non-utf8 character #196 - Added FindGLM install for CMake #189 - Fixed GTX_color_space - saturation #195 +- Fixed glm::isinf and glm::isnan for with Android NDK 9d #191 ================================================================================ GLM 0.9.5.3: 2014-04-02