diff options
author | Eric Penner <epenner@google.com> | 2014-08-25 20:16:37 -0700 |
---|---|---|
committer | Eric Penner <epenner@google.com> | 2014-08-27 03:10:58 +0000 |
commit | 2d14a0ed4f5861bfa67e9db138ffdc70d2d5e6e4 (patch) | |
tree | 848da644b514505f608cda3e143ddb3a15e94278 /include/gui | |
parent | 7de2bde3c4c3a6ecc7e6f21e3f3322688b718c4a (diff) | |
download | frameworks_native-2d14a0ed4f5861bfa67e9db138ffdc70d2d5e6e4.zip frameworks_native-2d14a0ed4f5861bfa67e9db138ffdc70d2d5e6e4.tar.gz frameworks_native-2d14a0ed4f5861bfa67e9db138ffdc70d2d5e6e4.tar.bz2 |
GLConsumer: Fix eglTerminate/eglInit edge case.
If a display is terminated and then initialized, we can't detect
this using the display itself (it has the same value), but all
EglImages still become invalid for the display. This patch detects
this during image binding and forces creation of a new EglImage.
Bug: 10430249
Change-Id: I75101c50962f21263dca3ec6e241a2e5a3c23dad
Diffstat (limited to 'include/gui')
-rw-r--r-- | include/gui/GLConsumer.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/include/gui/GLConsumer.h b/include/gui/GLConsumer.h index 37530db..f91fe46 100644 --- a/include/gui/GLConsumer.h +++ b/include/gui/GLConsumer.h @@ -287,7 +287,9 @@ private: // createIfNeeded creates an EGLImage if required (we haven't created // one yet, or the EGLDisplay or crop-rect has changed). - status_t createIfNeeded(EGLDisplay display, const Rect& cropRect); + status_t createIfNeeded(EGLDisplay display, + const Rect& cropRect, + bool forceCreate = false); // This calls glEGLImageTargetTexture2DOES to bind the image to the // texture in the specified texture target. |