diff --git a/indra/llrender/llimagegl.cpp b/indra/llrender/llimagegl.cpp
index b3b79bd6c4d9451537b40fe5e483998bcb0ab5f3..50d4532fa7f73df88870deb5b3a62e32cfd004e1 100644
--- a/indra/llrender/llimagegl.cpp
+++ b/indra/llrender/llimagegl.cpp
@@ -1408,8 +1408,11 @@ void LLImageGL::setManualImage(U32 target, S32 miplevel, S32 intformat, S32 widt
         LL_PROFILE_ZONE_NUM(height);
 
         free_cur_tex_image();
-#if 0
-        glTexImage2D(target, miplevel, intformat, width, height, 0, pixformat, pixtype, use_scratch ? scratch : pixels);
+#if LL_DARWIN
+        {
+            LL_PROFILE_ZONE_NAMED("glTexImage2D alloc");
+            glTexImage2D(target, miplevel, intformat, width, height, 0, pixformat, pixtype, use_scratch ? scratch : pixels);
+        }
 #else
         // break up calls to a manageable size for the GL command buffer
         {
diff --git a/indra/llrender/llvertexbuffer.cpp b/indra/llrender/llvertexbuffer.cpp
index 11e2b6e5c4defeec6590089d4a80d0c5b6de9895..9fb5eef3a25be433c354e61d94ed5cf99898284e 100644
--- a/indra/llrender/llvertexbuffer.cpp
+++ b/indra/llrender/llvertexbuffer.cpp
@@ -1363,7 +1363,7 @@ void LLVertexBuffer::setBuffer()
     U32 data_mask = LLGLSLShader::sCurBoundShaderPtr->mAttributeMask;
 
     // this Vertex Buffer must provide all necessary attributes for currently bound shader
-    llassert(((~data_mask & mTypeMask) > 0) || (mTypeMask == data_mask));
+    llassert((data_mask & mTypeMask) == data_mask);
 
     if (sGLRenderBuffer != mGLBuffer)
     {
diff --git a/indra/newview/app_settings/shaders/class1/interface/gaussianF.glsl b/indra/newview/app_settings/shaders/class1/interface/gaussianF.glsl
index 8e341503f5a958a53756c1304f939e962dd30d22..188fac54601e71a4be06e5cc9908ef284142dca9 100644
--- a/indra/newview/app_settings/shaders/class1/interface/gaussianF.glsl
+++ b/indra/newview/app_settings/shaders/class1/interface/gaussianF.glsl
@@ -41,7 +41,7 @@ void main()
 {
     vec3 col = vec3(0,0,0);
 
-    float w[] = { 0.0002, 0.0060, 0.0606, 0.2417, 0.3829, 0.2417, 0.0606, 0.0060, 0.0002 };
+    float w[9] = float[9]( 0.0002, 0.0060, 0.0606, 0.2417, 0.3829, 0.2417, 0.0606, 0.0060, 0.0002 );
     
     for (int i = 0; i < 9; ++i)
     {
diff --git a/indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl b/indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl
index edc0a9628b15f07513ca0520a78530fc74c42129..7af7f20f85dbac04eb2b2a07d5c6795e96c9cc5c 100644
--- a/indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl
+++ b/indra/newview/app_settings/shaders/class1/interface/splattexturerectV.glsl
@@ -26,15 +26,12 @@
 uniform mat4 modelview_projection_matrix;
 
 in vec3 position;
-in vec4 diffuse_color;
 
-out vec4 vertex_color;
 out vec2 vary_texcoord0;
 
 void main()
 {
 	gl_Position = modelview_projection_matrix * vec4(position.xyz, 1.0);
 	vary_texcoord0 = position.xy*0.5+0.5;
-	vertex_color = diffuse_color;
 }
 
diff --git a/indra/newview/featuretable_mac.txt b/indra/newview/featuretable_mac.txt
index 2eb80e0355eaea82ede8b85e186c1f4e109bf77f..df12f56dd257f8b051ecfb20d34c09671bb6f32e 100644
--- a/indra/newview/featuretable_mac.txt
+++ b/indra/newview/featuretable_mac.txt
@@ -71,6 +71,7 @@ RenderGLMultiThreaded       1   0
 RenderReflectionsEnabled    1   1
 RenderReflectionProbeDetail	1	2
 RenderScreenSpaceReflections 1  1
+RenderReflectionProbeCount  1   8
 
 //
 // Low Graphics Settings