Ignore EGL_BAD_CURRENT_SURFACE errors from eglSwapBuffers

Certain EGL device drivers are generating this error, so we need to
survive it. (It's not clear from the EGL spec whether this is a
legitimate error code, but since it's being generated we need to
handle it.)

Remove logging of expected errors from elSwapBuffers. We expect these
errors to happen, and are handeling them by ignoring them.
No need to clutter the logs.

Bug: 6083241

Change-Id: If17dcfbb68d3009b92cf95a448728ccb47023b51
This commit is contained in:
Jack Palevich
2012-03-15 11:50:45 -07:00
parent 6c25ffb770
commit 48a59c3d85

View File

@@ -1145,11 +1145,15 @@ public class GLSurfaceView extends SurfaceView implements SurfaceHolder.Callback
switch(error) {
case EGL11.EGL_CONTEXT_LOST:
return false;
case EGL10.EGL_BAD_CURRENT_SURFACE:
// The current surface is bad, probably because the window manager has closed
// the associated window. Ignore this error, on the assumption that the
// application will be closed soon.
break;
case EGL10.EGL_BAD_NATIVE_WINDOW:
// The native window is bad, probably because the
// window manager has closed it. Ignore this error,
// on the expectation that the application will be closed soon.
Log.e("EglHelper", "eglSwapBuffers returned EGL_BAD_NATIVE_WINDOW. tid=" + Thread.currentThread().getId());
// The native window is bad, probably because the window manager has closed it.
// Ignore this error, on the assumption that the application will be closed
// soon.
break;
default:
throwEglException("eglSwapBuffers", error);