Commit b5d3b9c4 by Nicolas Capens

Fix accessing null pointer when no uniform buffer is bound.

Bug b/30838145 Change-Id: I06aeafa6e7a8aefbc1d4447a9d2607895d07a096 Reviewed-on: https://swiftshader-review.googlesource.com/6950Tested-by: 's avatarNicolas Capens <capn@google.com> Reviewed-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <capn@google.com>
parent 13241c66
......@@ -1178,9 +1178,14 @@ namespace es2
for(unsigned int bufferBindingIndex = 0; bufferBindingIndex < MAX_UNIFORM_BUFFER_BINDINGS; bufferBindingIndex++)
{
int index = vertexUniformBuffers[bufferBindingIndex];
device->VertexProcessor::setUniformBuffer(bufferBindingIndex, (index != -1) ? uniformBuffers[index].get()->getResource() : nullptr, (index != -1) ? uniformBuffers[index].getOffset() : 0);
index = fragmentUniformBuffers[bufferBindingIndex];
device->PixelProcessor::setUniformBuffer(bufferBindingIndex, (index != -1) ? uniformBuffers[index].get()->getResource() : nullptr, (index != -1) ? uniformBuffers[index].getOffset() : 0);
const gl::BindingPointer<Buffer> &buffer = uniformBuffers[index].get();
if(buffer)
{
device->VertexProcessor::setUniformBuffer(bufferBindingIndex, (index != -1) ? buffer->getResource() : nullptr, (index != -1) ? uniformBuffers[index].getOffset() : 0);
index = fragmentUniformBuffers[bufferBindingIndex];
device->PixelProcessor::setUniformBuffer(bufferBindingIndex, (index != -1) ? buffer->getResource() : nullptr, (index != -1) ? uniformBuffers[index].getOffset() : 0);
}
}
}
......
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