diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp
index 31dffdd545300abf55686fd74883d1938d55ebbe..607bbf3b3b3eac16495c61567a879ebffce5b3d4 100644
--- a/indra/llrender/llvertexbuffer.cpp
+++ b/indra/llrender/llvertexbuffer.cpp
@@ -1234,7 +1234,7 @@ void LLVertexBuffer::createGLIndices(U32 size)
 
 void LLVertexBuffer::destroyGLBuffer()
 {
-	if (mGLBuffer)
+	if (mGLBuffer || mMappedData)
 	{
 		if (mMappedDataUsingVBOs)
 		{
@@ -1254,7 +1254,7 @@ void LLVertexBuffer::destroyGLBuffer()
 
 void LLVertexBuffer::destroyGLIndices()
 {
-	if (mGLIndices)
+	if (mGLIndices || mMappedIndexData)
 	{
 		if (mMappedIndexDataUsingVBOs)
 		{