summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorMathias Agopian <mathias@google.com>2013-08-28 18:11:46 -0700
committerMathias Agopian <mathias@google.com>2013-08-28 18:11:46 -0700
commit931bda1c472ba8c8e965bdba6757ff94154df903 (patch)
tree4f4077ceeca58596ed1d81d62570cc2fa3de8911 /services
parent672ddf2b58b6c6ddef4fc4f296e5fa53910d8e3b (diff)
downloadframeworks_native-931bda1c472ba8c8e965bdba6757ff94154df903.zip
frameworks_native-931bda1c472ba8c8e965bdba6757ff94154df903.tar.gz
frameworks_native-931bda1c472ba8c8e965bdba6757ff94154df903.tar.bz2
reset the gl viewport at each frame for each display
Bug: 10097128, 9506003 Change-Id: Ie0403a631e339a9134216224f3366f46ece58b53
Diffstat (limited to 'services')
-rw-r--r--services/surfaceflinger/DisplayDevice.cpp2
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp3
2 files changed, 2 insertions, 3 deletions
diff --git a/services/surfaceflinger/DisplayDevice.cpp b/services/surfaceflinger/DisplayDevice.cpp
index 9708ee3..61a9361 100644
--- a/services/surfaceflinger/DisplayDevice.cpp
+++ b/services/surfaceflinger/DisplayDevice.cpp
@@ -271,9 +271,9 @@ EGLBoolean DisplayDevice::makeCurrent(EGLDisplay dpy, EGLContext ctx) const {
if (result == EGL_TRUE) {
if (mType >= DisplayDevice::DISPLAY_VIRTUAL)
eglSwapInterval(dpy, 0);
- setViewportAndProjection();
}
}
+ setViewportAndProjection();
return result;
}
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 9fd3f25..0323cb7 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -2726,6 +2726,7 @@ void SurfaceFlinger::renderScreenImplLocked(
// compositionComplete is needed for older driver
hw->compositionComplete();
+ hw->setViewportAndProjection();
}
@@ -2805,8 +2806,6 @@ status_t SurfaceFlinger::captureScreenImplLocked(
native_window_api_disconnect(window, NATIVE_WINDOW_API_EGL);
}
- hw->setViewportAndProjection();
-
return result;
}