tests: Fix SamplerInUseDestroyedSignaled
Change-Id: Ia58719d9c24ccc795c49c29e16e065cdc0175d31
diff --git a/tests/layer_validation_tests.cpp b/tests/layer_validation_tests.cpp
index 12032d8..bf4930e 100644
--- a/tests/layer_validation_tests.cpp
+++ b/tests/layer_validation_tests.cpp
@@ -11872,6 +11872,12 @@
vkCmdBindPipeline(m_commandBuffer->handle(), VK_PIPELINE_BIND_POINT_GRAPHICS, pipe.handle());
vkCmdBindDescriptorSets(m_commandBuffer->GetBufferHandle(), VK_PIPELINE_BIND_POINT_GRAPHICS, pipeline_layout, 0, 1,
&descriptor_set, 0, nullptr);
+
+ VkViewport viewport = {0, 0, 16, 16, 0, 1};
+ VkRect2D scissor = {{0, 0}, {16, 16}};
+ vkCmdSetViewport(m_commandBuffer->handle(), 0, 1, &viewport);
+ vkCmdSetScissor(m_commandBuffer->handle(), 0, 1, &scissor);
+
Draw(1, 0, 0, 0);
m_commandBuffer->EndRenderPass();
m_commandBuffer->EndCommandBuffer();
@@ -11883,11 +11889,12 @@
// Submit cmd buffer and then destroy sampler while in-flight
vkQueueSubmit(m_device->m_queue, 1, &submit_info, VK_NULL_HANDLE);
- vkDestroySampler(m_device->device(), sampler, nullptr);
+ vkDestroySampler(m_device->device(), sampler, nullptr); // Destroyed too soon
m_errorMonitor->VerifyFound();
vkQueueWaitIdle(m_device->m_queue);
+
// Now we can actually destroy sampler
- vkDestroySampler(m_device->device(), sampler, nullptr);
+ vkDestroySampler(m_device->device(), sampler, NULL); // Destroyed for real
vkDestroyImageView(m_device->device(), view, NULL);
vkDestroyPipelineLayout(m_device->device(), pipeline_layout, NULL);
vkDestroyDescriptorSetLayout(m_device->device(), ds_layout, NULL);