From c7df9667ac449038dbf566ffb0c23ed867dda7a5 Mon Sep 17 00:00:00 2001 From: Courtney Goeltzenleuchter Date: Mon, 27 Apr 2015 17:16:56 -0600 Subject: draw_state: Fix another MSVC++ debug assert --- layers/draw_state.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'layers/draw_state.cpp') diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp index 8ab366fe..1b85873e 100755 --- a/layers/draw_state.cpp +++ b/layers/draw_state.cpp @@ -1009,10 +1009,12 @@ static void resetCB(const VkCmdBuffer cb) { GLOBAL_CB_NODE* pCB = getCBNode(cb); if (pCB) { - while (!pCB->pCmds.empty()) { - delete pCB->pCmds.back(); - pCB->pCmds.pop_back(); + vector cmd_list = pCB->pCmds; + while (!cmd_list.empty()) { + delete cmd_list.back(); + cmd_list.pop_back(); } + pCB->pCmds.clear(); // Reset CB state VkFlags saveFlags = pCB->flags; uint32_t saveQueueNodeIndex = pCB->queueNodeIndex; @@ -1212,7 +1214,8 @@ static void cbDumpDotFile(string outFileName) if (pCB) { fprintf(pOutFile, "subgraph cluster_cmdBuffer%u\n{\nlabel=\"Command Buffer #%u\"\n", i, i); uint32_t instNum = 0; - for (vector::iterator ii=pCB->pCmds.begin(); ii!=pCB->pCmds.end(); ++ii) { + vector cmd_list = pCB->pCmds; + for (vector::iterator ii= cmd_list.begin(); ii!= cmd_list.end(); ++ii) { if (instNum) { fprintf(pOutFile, "\"CB%pCMD%u\" -> \"CB%pCMD%u\" [];\n", (void*)pCB->cmdBuffer, instNum-1, (void*)pCB->cmdBuffer, instNum); } -- cgit v1.2.3