aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.cpp
diff options
context:
space:
mode:
authorChris Forbes <chrisforbes@google.com>2017-08-16 13:29:41 -0700
committerChris Forbes <chrisf@ijw.co.nz>2017-08-17 09:49:34 -0700
commit872a5ca25a2f87f98d53fea4699d4f795ada8b23 (patch)
treec8d53d20b7125b63e31d3d72d929b662aaf1075a /layers/core_validation.cpp
parent20ed22faea36c9b5c72a6110dce008b8532b7237 (diff)
downloadusermoji-872a5ca25a2f87f98d53fea4699d4f795ada8b23.tar.xz
layers: Wire up static_status check for CmdSetScissor
Diffstat (limited to 'layers/core_validation.cpp')
-rw-r--r--layers/core_validation.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index f5df7cec..d65c5576 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -5186,8 +5186,15 @@ VKAPI_ATTR void VKAPI_CALL CmdSetScissor(VkCommandBuffer commandBuffer, uint32_t
if (pCB) {
skip |= ValidateCmdQueueFlags(dev_data, pCB, "vkCmdSetScissor()", VK_QUEUE_GRAPHICS_BIT, VALIDATION_ERROR_1d802415);
skip |= ValidateCmd(dev_data, pCB, CMD_SETSCISSORSTATE, "vkCmdSetScissor()");
+ if (pCB->static_status & CBSTATUS_SCISSOR_SET) {
+ skip |= log_msg(dev_data->report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT,
+ HandleToUint64(commandBuffer), __LINE__, VALIDATION_ERROR_1d80049c, "DS",
+ "vkCmdSetScissor(): pipeline was created without VK_DYNAMIC_STATE_SCISSOR flag. %s.",
+ validation_error_map[VALIDATION_ERROR_1d80049c]);
+ }
if (!skip) {
pCB->scissorMask |= ((1u << scissorCount) - 1u) << firstScissor;
+ pCB->status |= CBSTATUS_SCISSOR_SET;
}
}
lock.unlock();