diff --git a/indra/newview/lldrawpoolterrain.cpp b/indra/newview/lldrawpoolterrain.cpp
index e14d0c5f9d5ef60e65c2fceac12060c8789b89bd..ce601325c88ccd1c2f87ede6d676f3aecc969615 100644
--- a/indra/newview/lldrawpoolterrain.cpp
+++ b/indra/newview/lldrawpoolterrain.cpp
@@ -196,7 +196,7 @@ void LLDrawPoolTerrain::render(S32 pass)
 		return;
 	}
 	// Render simplified land if video card can't do sufficient multitexturing
-	if (!gGLManager.mHasARBEnvCombine || (gGLManager.mNumTextureUnits < 2))
+	if (!LLGLSLShader::sNoFixedFunction || !gGLManager.mHasARBEnvCombine || (gGLManager.mNumTextureUnits < 2))
 	{
 		renderSimple(); // Render without multitexture
 		return;