From 46c90248a677f09c2124aa45614113cf09f2cf08 Mon Sep 17 00:00:00 2001 From: Tobin Ehlis Date: Tue, 23 Jun 2015 10:52:08 -0600 Subject: layers: Correctly set Object Type for Dynamic State when flagging error --- layers/draw_state.cpp | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp index 5e4956e8..3d6cccf8 100644 --- a/layers/draw_state.cpp +++ b/layers/draw_state.cpp @@ -2155,7 +2155,24 @@ VK_LAYER_EXPORT void VKAPI vkCmdBindDynamicStateObject(VkCmdBuffer cmdBuffer, Vk set_cb_dyn_status(pCB, stateBindPoint); addCmd(pCB, CMD_BINDDYNAMICSTATEOBJECT); if (dynamicStateMap.find(state) == dynamicStateMap.end()) { - log_msg(mdd(cmdBuffer), VK_DBG_REPORT_ERROR_BIT, (VkObjectType) 0, state, 0, DRAWSTATE_INVALID_DYNAMIC_STATE_OBJECT, "DS", + VkObjectType stateType; + switch (stateBindPoint) { + case VK_STATE_BIND_POINT_VIEWPORT: + stateType = VK_OBJECT_TYPE_DYNAMIC_VP_STATE; + break; + case VK_STATE_BIND_POINT_RASTER: + stateType = VK_OBJECT_TYPE_DYNAMIC_RS_STATE; + break; + case VK_STATE_BIND_POINT_COLOR_BLEND: + stateType = VK_OBJECT_TYPE_DYNAMIC_CB_STATE; + break; + case VK_STATE_BIND_POINT_DEPTH_STENCIL: + stateType = VK_OBJECT_TYPE_DYNAMIC_DS_STATE; + break; + default: + stateType = (VkObjectType) 0; + } + log_msg(mdd(cmdBuffer), VK_DBG_REPORT_ERROR_BIT, stateType, state, 0, DRAWSTATE_INVALID_DYNAMIC_STATE_OBJECT, "DS", "Unable to find dynamic state object %p, was it ever created?", (void*)state); } else { pCB->lastBoundDynamicState[stateBindPoint] = dynamicStateMap[state]; -- cgit v1.2.3