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++)