diff options
| author | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-09-21 11:44:06 -0600 |
|---|---|---|
| committer | Courtney Goeltzenleuchter <courtney@LunarG.com> | 2015-09-23 11:15:00 -0600 |
| commit | d6217bc20873a7d70537921e7cea9be5572bc34c (patch) | |
| tree | 664d46e71fd454671fb7e68f4603da3c841e0745 /layers/mem_tracker.cpp | |
| parent | 4cbf78b9e52a0e2dd3e13eccc137bb39ba8000c9 (diff) | |
| download | usermoji-d6217bc20873a7d70537921e7cea9be5572bc34c.tar.xz | |
bug 14365: make separate viewport and scissor cmds
Diffstat (limited to 'layers/mem_tracker.cpp')
| -rw-r--r-- | layers/mem_tracker.cpp | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/layers/mem_tracker.cpp b/layers/mem_tracker.cpp index 80df8387..36574f60 100644 --- a/layers/mem_tracker.cpp +++ b/layers/mem_tracker.cpp @@ -2237,8 +2237,25 @@ VK_LAYER_EXPORT void VKAPI vkCmdBindPipeline( VK_LAYER_EXPORT void VKAPI vkCmdSetViewport( VkCmdBuffer cmdBuffer, - uint32_t viewportAndScissorCount, - const VkViewport* pViewports, + uint32_t viewportCount, + const VkViewport* pViewports) +{ + VkBool32 skipCall = VK_FALSE; + loader_platform_thread_lock_mutex(&globalLock); + MT_CB_INFO *pCmdBuf = get_cmd_buf_info(cmdBuffer); + if (!pCmdBuf) { + skipCall = log_msg(mdd(cmdBuffer), VK_DBG_REPORT_ERROR_BIT, VK_OBJECT_TYPE_COMMAND_BUFFER, (uint64_t)cmdBuffer, 0, + MEMTRACK_INVALID_CB, "MEM", "Unable to find command buffer object %p, was it ever created?", (void*)cmdBuffer); + } + loader_platform_thread_unlock_mutex(&globalLock); + if (VK_FALSE == skipCall) { + get_dispatch_table(mem_tracker_device_table_map, cmdBuffer)->CmdSetViewport(cmdBuffer, viewportCount, pViewports); + } +} + +VK_LAYER_EXPORT void VKAPI vkCmdSetScissor( + VkCmdBuffer cmdBuffer, + uint32_t scissorCount, const VkRect2D* pScissors) { VkBool32 skipCall = VK_FALSE; @@ -2250,7 +2267,7 @@ VK_LAYER_EXPORT void VKAPI vkCmdSetViewport( } loader_platform_thread_unlock_mutex(&globalLock); if (VK_FALSE == skipCall) { - get_dispatch_table(mem_tracker_device_table_map, cmdBuffer)->CmdSetViewport(cmdBuffer, viewportAndScissorCount, pViewports, pScissors); + get_dispatch_table(mem_tracker_device_table_map, cmdBuffer)->CmdSetScissor(cmdBuffer, scissorCount, pScissors); } } @@ -2949,6 +2966,8 @@ VK_LAYER_EXPORT PFN_vkVoidFunction VKAPI vkGetDeviceProcAddr( return (PFN_vkVoidFunction) vkCmdBindPipeline; if (!strcmp(funcName, "vkCmdSetViewport")) return (PFN_vkVoidFunction) vkCmdSetViewport; + if (!strcmp(funcName, "vkCmdSetScissor")) + return (PFN_vkVoidFunction) vkCmdSetScissor; if (!strcmp(funcName, "vkCmdSetLineWidth")) return (PFN_vkVoidFunction) vkCmdSetLineWidth; if (!strcmp(funcName, "vkCmdSetDepthBias")) |
