diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp
index 988710b5effc159b01cdc56159290e45198d2aa2..8b4297f64c419f608579658e7456b3abfa1c457d 100644
--- a/indra/newview/pipeline.cpp
+++ b/indra/newview/pipeline.cpp
@@ -871,17 +871,17 @@ bool LLPipeline::allocateScreenBuffer(U32 resX, U32 resY, U32 samples)
             resY *= RenderResolutionMultiplier;
         }
         // [/SL:KB]
+    }
 
-            // remember these dimensions
-        mRT->width = resX;
-        mRT->height = resY;
+    // remember these dimensions
+    mRT->width = resX;
+    mRT->height = resY;
 
-        if (RenderUIBuffer)
+    if (RenderUIBuffer && !gCubeSnapshot)
+    {
+        if (!mRT->uiScreen.allocate(resX, resY, GL_RGBA))
         {
-            if (!mRT->uiScreen.allocate(resX, resY, GL_RGBA))
-            {
-                return false;
-            }
+            return false;
         }
     }