Fix a bunch of mismatched new[]/delete.

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
diff --git a/layers/draw_state.cpp b/layers/draw_state.cpp
index c78488d..4271e4c 100755
--- a/layers/draw_state.cpp
+++ b/layers/draw_state.cpp
@@ -857,12 +857,12 @@
             // Free Update shadow struct tree
             freeShadowUpdateTree(pFreeSet);
             if (pFreeSet->ppDescriptors) {
-                delete pFreeSet->ppDescriptors;
+                delete[] pFreeSet->ppDescriptors;
             }
             delete pFreeSet;
         }
         if ((*ii).second->createInfo.pTypeCount) {
-            delete (*ii).second->createInfo.pTypeCount;
+            delete[] (*ii).second->createInfo.pTypeCount;
         }
         delete (*ii).second;
     }
@@ -883,7 +883,7 @@
             delete[] pLayout->createInfo.pBinding;
         }
         if (pLayout->pTypes) {
-            delete pLayout->pTypes;
+            delete[] pLayout->pTypes;
         }
         delete pLayout;
     }