Commit 4d208956 by Alexis Hetu Committed by Alexis Hétu

Fixed 2D Array texture binding query

The 2D Array texture binding query was stll using TEXTURE_3D instead of using TEXTURE_2D_ARRAY. Change-Id: Ib55007995c336e72aaae7fd62918f232a5c1c3fc Reviewed-on: https://swiftshader-review.googlesource.com/4744Tested-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <capn@google.com>
parent 82b3d157
...@@ -2102,50 +2102,54 @@ template<typename T> bool Context::getIntegerv(GLenum pname, T *params) const ...@@ -2102,50 +2102,54 @@ template<typename T> bool Context::getIntegerv(GLenum pname, T *params) const
} }
} }
break; break;
case GL_TEXTURE_BINDING_2D: case GL_TEXTURE_BINDING_2D:
{ if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1)
if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1) {
{ error(GL_INVALID_OPERATION);
error(GL_INVALID_OPERATION); return false;
return false; }
}
*params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].name(); *params = mState.samplerTexture[TEXTURE_2D][mState.activeSampler].name();
} break;
break; case GL_TEXTURE_BINDING_CUBE_MAP:
case GL_TEXTURE_BINDING_CUBE_MAP: if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1)
{ {
if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1) error(GL_INVALID_OPERATION);
{ return false;
error(GL_INVALID_OPERATION); }
return false;
}
*params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].name(); *params = mState.samplerTexture[TEXTURE_CUBE][mState.activeSampler].name();
} break;
break; case GL_TEXTURE_BINDING_EXTERNAL_OES:
case GL_TEXTURE_BINDING_EXTERNAL_OES: if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1)
{ {
if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1) error(GL_INVALID_OPERATION);
{ return false;
error(GL_INVALID_OPERATION); }
return false;
}
*params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].name(); *params = mState.samplerTexture[TEXTURE_EXTERNAL][mState.activeSampler].name();
} break;
break;
case GL_TEXTURE_BINDING_3D_OES: case GL_TEXTURE_BINDING_3D_OES:
case GL_TEXTURE_BINDING_2D_ARRAY: // GLES 3.0 if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1)
{ {
if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1) error(GL_INVALID_OPERATION);
{ return false;
error(GL_INVALID_OPERATION); }
return false;
}
*params = mState.samplerTexture[TEXTURE_3D][mState.activeSampler].name(); *params = mState.samplerTexture[TEXTURE_3D][mState.activeSampler].name();
break;
case GL_TEXTURE_BINDING_2D_ARRAY: // GLES 3.0
if(clientVersion < 3)
{
return false;
} }
else if(mState.activeSampler > MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1)
{
error(GL_INVALID_OPERATION);
return false;
}
*params = mState.samplerTexture[TEXTURE_2D_ARRAY][mState.activeSampler].name();
break; break;
case GL_COPY_READ_BUFFER_BINDING: // name, initially 0 case GL_COPY_READ_BUFFER_BINDING: // name, initially 0
if(clientVersion >= 3) if(clientVersion >= 3)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment