diff --git a/services/surfaceflinger/DisplayDevice.cpp b/services/surfaceflinger/DisplayDevice.cpp index 9708ee330..61a936157 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 9fd3f25fe..0323cb73a 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; }