Fix reentrant deadlock in GLSurfaceView.
It is possible for clients to call SurfaceView methods e.g. setFormat from the GLSurfaceView#Renderer drawFrame callback. In this case, SurfaceView#updatewindow will understand that a redraw is required, and will request it back to GLSurfaceView. Remember, we are still on the GLThread though (from the drawFrame callback). So these methods (requestRenderAndWait, windowSizeChanged), need to be reentrant. Also fix a data race around mWantRenderNotification, which was accessed out of lock. Bug: 26770615 Change-Id: Ic66a36c886ae0b085dd456a4220f0d4f270fb016
Loading
Please register or sign in to comment