draw_state: Fix another MSVC++ debug assert
diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp
index 8ab366f..1b85873 100755
--- a/layers/draw_state.cpp
+++ b/layers/draw_state.cpp
@@ -1009,10 +1009,12 @@
 {
     GLOBAL_CB_NODE* pCB = getCBNode(cb);
     if (pCB) {
-        while (!pCB->pCmds.empty()) {
-            delete pCB->pCmds.back();
-            pCB->pCmds.pop_back();
+        vector<CMD_NODE*> 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 @@
         if (pCB) {
             fprintf(pOutFile, "subgraph cluster_cmdBuffer%u\n{\nlabel=\"Command Buffer #%u\"\n", i, i);
             uint32_t instNum = 0;
-            for (vector<CMD_NODE*>::iterator ii=pCB->pCmds.begin(); ii!=pCB->pCmds.end(); ++ii) {
+            vector<CMD_NODE*> cmd_list = pCB->pCmds;
+            for (vector<CMD_NODE*>::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);
                 }