| Index: src/gpu/vk/GrVkPipelineState.cpp
|
| diff --git a/src/gpu/vk/GrVkPipelineState.cpp b/src/gpu/vk/GrVkPipelineState.cpp
|
| index 3e442fb249b5c7d1b51a559156e8e3614e4186a4..e464848034cd0c61f4f66ad7bcec13aeb5e9aef1 100644
|
| --- a/src/gpu/vk/GrVkPipelineState.cpp
|
| +++ b/src/gpu/vk/GrVkPipelineState.cpp
|
| @@ -200,17 +200,17 @@ void GrVkPipelineState::setData(GrVkGpu* gpu,
|
| this->writeSamplers(gpu, textureBindings);
|
| }
|
|
|
| -
|
| if (fVertexUniformBuffer.get() || fFragmentUniformBuffer.get()) {
|
| - fUniformPoolManager.getNewDescriptorSet(gpu,
|
| + if (fDataManager.uploadUniformBuffers(gpu, fVertexUniformBuffer, fFragmentUniformBuffer) ||
|
| + VK_NULL_HANDLE == fDescriptorSets[GrVkUniformHandler::kUniformBufferDescSet]) {
|
| + fUniformPoolManager.getNewDescriptorSet(gpu,
|
| &fDescriptorSets[GrVkUniformHandler::kUniformBufferDescSet]);
|
| - this->writeUniformBuffers(gpu);
|
| + this->writeUniformBuffers(gpu);
|
| + }
|
| }
|
| }
|
|
|
| void GrVkPipelineState::writeUniformBuffers(const GrVkGpu* gpu) {
|
| - fDataManager.uploadUniformBuffers(gpu, fVertexUniformBuffer, fFragmentUniformBuffer);
|
| -
|
| VkWriteDescriptorSet descriptorWrites[2];
|
| memset(descriptorWrites, 0, 2 * sizeof(VkWriteDescriptorSet));
|
|
|
|
|