From 8aa11d82f33be8089a53feb3ba3c40fd8a33ad95 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Thu, 16 Dec 2010 18:46:17 -0800 Subject: [PATCH] fix a small bug that caused screenshot to show garbage in some cases (DO NOT MERGE) we were not clearing the screen entirely, which caused garbage when the screen wasn't entirely covered by windows. Change-Id: Ia7aa13c36a8a314e0e8427d419b16b9aa2165ddf --- services/surfaceflinger/SurfaceFlinger.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 664e5ad049889..50f4914d1869e 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -2114,6 +2114,7 @@ status_t SurfaceFlinger::captureScreenImplLocked(DisplayID dpy, // invert everything, b/c glReadPixel() below will invert the FB glViewport(0, 0, sw, sh); + glScissor(0, 0, sw, sh); glMatrixMode(GL_PROJECTION); glPushMatrix(); glLoadIdentity(); @@ -2123,6 +2124,7 @@ status_t SurfaceFlinger::captureScreenImplLocked(DisplayID dpy, // redraw the screen entirely... glClearColor(0,0,0,1); glClear(GL_COLOR_BUFFER_BIT); + const Vector< sp >& layers(mVisibleLayersSortedByZ); const size_t count = layers.size(); for (size_t i=0 ; i