aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.cpp
diff options
context:
space:
mode:
authorChris Forbes <chrisforbes@google.com>2017-08-16 13:26:00 -0700
committerChris Forbes <chrisf@ijw.co.nz>2017-08-17 09:49:34 -0700
commit20ed22faea36c9b5c72a6110dce008b8532b7237 (patch)
tree33309ae71f442089816cc96a30c532f56545f22b /layers/core_validation.cpp
parent93bb8547abb97af0911ea558298752653a1e430a (diff)
downloadusermoji-20ed22faea36c9b5c72a6110dce008b8532b7237.tar.xz
layers: Wire up static_status check for CmdSetViewport
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 79c42f9b..f5df7cec 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -5162,8 +5162,15 @@ VKAPI_ATTR void VKAPI_CALL CmdSetViewport(VkCommandBuffer commandBuffer, uint32_
if (pCB) {
skip |= ValidateCmdQueueFlags(dev_data, pCB, "vkCmdSetViewport()", VK_QUEUE_GRAPHICS_BIT, VALIDATION_ERROR_1e002415);
skip |= ValidateCmd(dev_data, pCB, CMD_SETVIEWPORTSTATE, "vkCmdSetViewport()");
+ if (pCB->static_status & CBSTATUS_VIEWPORT_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_1e00098a, "DS",
+ "vkCmdSetViewport(): pipeline was created without VK_DYNAMIC_STATE_VIEWPORT flag. %s.",
+ validation_error_map[VALIDATION_ERROR_1e00098a]);
+ }
if (!skip) {
pCB->viewportMask |= ((1u << viewportCount) - 1u) << firstViewport;
+ pCB->status |= CBSTATUS_VIEWPORT_SET;
}
}
lock.unlock();