SurfaceTexture: fix a test deadlock
This change fixes a test issue that resulted in a deadlock.
Change-Id: I4729e8dd47c8f5fea49bfeff3cea58627ead6d04
Bug: 5174876
diff --git a/libs/gui/tests/SurfaceTexture_test.cpp b/libs/gui/tests/SurfaceTexture_test.cpp
index 44babcf..b8bc454 100644
--- a/libs/gui/tests/SurfaceTexture_test.cpp
+++ b/libs/gui/tests/SurfaceTexture_test.cpp
@@ -974,8 +974,6 @@
eglSwapBuffers(mEglDisplay, stcEglSurface);
- eglDestroySurface(mEglDisplay, stcEglSurface);
-
// Do the consumer side of things
EXPECT_TRUE(eglMakeCurrent(mEglDisplay, mEglSurface, mEglSurface,
mEglContext));
@@ -985,6 +983,10 @@
mST->updateTexImage();
+ // We must wait until updateTexImage has been called to destroy the
+ // EGLSurface because we're in synchronous mode.
+ eglDestroySurface(mEglDisplay, stcEglSurface);
+
glClearColor(0.2, 0.2, 0.2, 0.2);
glClear(GL_COLOR_BUFFER_BIT);