diff --git a/indra/newview/lldrawpoolmaterials.cpp b/indra/newview/lldrawpoolmaterials.cpp
index 52f476f5898aec093ed13a96b56de7debd6ab6af..f0e1221f159b591a652e36ef87f2766c2a282d8e 100644
--- a/indra/newview/lldrawpoolmaterials.cpp
+++ b/indra/newview/lldrawpoolmaterials.cpp
@@ -89,11 +89,17 @@ void LLDrawPoolMaterials::renderDeferred(S32 pass)
 		mShader->uniform4f(LLShaderMgr::SPECULAR_COLOR, params.mSpecColor.mV[0], params.mSpecColor.mV[1], params.mSpecColor.mV[2], params.mSpecColor.mV[3]);
 		mShader->uniform1f(LLShaderMgr::ENVIRONMENT_INTENSITY, params.mEnvIntensity);
 		
-		params.mNormalMap->addTextureStats(params.mVSize);
-		bindNormalMap(params.mNormalMap);
+		if (params.mNormalMap)
+		{
+			params.mNormalMap->addTextureStats(params.mVSize);
+			bindNormalMap(params.mNormalMap);
+		}
 		
-		params.mSpecularMap->addTextureStats(params.mVSize);
-		bindSpecularMap(params.mSpecularMap);
+		if (params.mSpecularMap)
+		{
+			params.mSpecularMap->addTextureStats(params.mVSize);
+			bindSpecularMap(params.mSpecularMap);
+		}
 		
 		diffuse_channel = mShader->enableTexture(LLShaderMgr::DIFFUSE_MAP);
 		pushBatch(params, VERTEX_DATA_MASK, TRUE);