Floating point parameters should be rounded, not truncated
Bug 20724899
Change-Id: I03f858ee3d159cfa2541afa1d8d063ca99701a4c
Reviewed-on: https://swiftshader-review.googlesource.com/3964
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/libGLESv2.cpp b/src/OpenGL/libGLESv2/libGLESv2.cpp
index d357f17..b7a1b3a 100644
--- a/src/OpenGL/libGLESv2/libGLESv2.cpp
+++ b/src/OpenGL/libGLESv2/libGLESv2.cpp
@@ -5910,7 +5910,7 @@
}
break;
case GL_TEXTURE_BASE_LEVEL:
- if(clientVersion < 3 || !texture->setBaseLevel((GLint)param))
+ if(clientVersion < 3 || !texture->setBaseLevel((GLint)(roundf(param))))
{
return error(GL_INVALID_VALUE);
}
@@ -5934,7 +5934,7 @@
}
break;
case GL_TEXTURE_MAX_LEVEL:
- if(clientVersion < 3 || !texture->setMaxLevel((GLint)param))
+ if(clientVersion < 3 || !texture->setMaxLevel((GLint)(roundf(param))))
{
return error(GL_INVALID_VALUE);
}