Clear cached state when deleting GL objects.

Change-Id: I84eac9b3796858e5e19e26851ad83baa1f9b6af2
Reviewed-on: https://chromium-review.googlesource.com/269142
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/gl/VertexArrayGL.cpp b/src/libANGLE/renderer/gl/VertexArrayGL.cpp
index 2536b00..40b6d72 100644
--- a/src/libANGLE/renderer/gl/VertexArrayGL.cpp
+++ b/src/libANGLE/renderer/gl/VertexArrayGL.cpp
@@ -48,25 +48,16 @@
 
 VertexArrayGL::~VertexArrayGL()
 {
-    if (mVertexArrayID != 0)
-    {
-        mFunctions->deleteVertexArrays(1, &mVertexArrayID);
-        mVertexArrayID = 0;
-    }
+    mStateManager->deleteVertexArray(mVertexArrayID);
+    mVertexArrayID = 0;
 
-    if (mStreamingElementArrayBuffer != 0)
-    {
-        mFunctions->deleteBuffers(1, &mStreamingElementArrayBuffer);
-        mStreamingElementArrayBufferSize = 0;
-        mStreamingElementArrayBuffer = 0;
-    }
+    mStateManager->deleteBuffer(mStreamingElementArrayBuffer);
+    mStreamingElementArrayBufferSize = 0;
+    mStreamingElementArrayBuffer = 0;
 
-    if (mStreamingArrayBuffer != 0)
-    {
-        mFunctions->deleteBuffers(1, &mStreamingArrayBuffer);
-        mStreamingArrayBufferSize = 0;
-        mStreamingArrayBuffer = 0;
-    }
+    mStateManager->deleteBuffer(mStreamingArrayBuffer);
+    mStreamingArrayBufferSize = 0;
+    mStreamingArrayBuffer = 0;
 
     mElementArrayBuffer.set(nullptr);
     for (size_t idx = 0; idx < mAttributes.size(); idx++)