diff --git a/indra/newview/llface.cpp b/indra/newview/llface.cpp
index 50a4925c37f8e5fc6841bc52b4edb555d63457ca..474645c084acd2c361778858f40a0b4ca1035841 100644
--- a/indra/newview/llface.cpp
+++ b/indra/newview/llface.cpp
@@ -1217,6 +1217,12 @@ BOOL LLFace::getGeometryVolume(const LLVolume& volume,
 {
 	LL_RECORD_BLOCK_TIME(FTM_FACE_GET_GEOM);
 	llassert(verify());
+
+	if (volume.getNumVolumeFaces() <= f) {
+        LL_WARNS() << "Attempt get volume face out of range! Total Faces: " << volume.getNumVolumeFaces() << " Attempt get access to: " << f << LL_ENDL;
+		return FALSE;
+	}
+
 	const LLVolumeFace &vf = volume.getVolumeFace(f);
 	S32 num_vertices = (S32)vf.mNumVertices;
 	S32 num_indices = (S32) vf.mNumIndices;